Атрибут перечисления не распознан

Это код, который я запускаю:

import Qubit
from Z import Z

q = Qubit(Z.V)

Код Qubit выглядит так:

from Z import Z

class Qubit:
  def __init__(self, spin):
    if isinstance(spin, Z):
      print ('success')

Z-код выглядит так:

from enum import Enum

class Z(Enum):
  H = 0
  V = 1

Когда я запускаю код, я получаю эту ошибку:

Traceback (most recent call last):
  File "main.py", line 4, in <module>
    q = Qubit(Z.V)
TypeError: 'module' object is not callable

Я делаю что-то неправильно?

1 ответ

Да, перечисление Z является членом модуля ZЭто означает, что вы должны ссылаться на это как Z.Z, оба в main.py а также Qubit, Кроме того, вы можете заменить import Z с from Z import Z в обоих файлах.

Другие вопросы по тегам