Интерпретатор Python, который случайно меняет тип или переменный - PullRequest
1 голос
/ 16 марта 2011

Так что я изучаю python для удовольствия, и я столкнулся с ошибкой, которая полностью меня озадачивает.Когда я запускаю свой код, я получаю следующую ошибку:

TypeError: unsupported operand type(s) for /: 'int' and 'type'

эта ошибка вызвана делением на:

for i in items:
    print i[1]
    multiplier = WeightLeft / i[1]

, что меня так смущает, что когда яprint i [1] он печатает

<type 'int>

Я попытался заставить знаменатель быть int, указав int (i [1]) в качестве знаменателя, но я получил новую ошибку:

TypeError: descriptor '__trunc__' of 'int' object needs an argument

Буду очень признателен за любой совет.

Ответы [ 2 ]

4 голосов
/ 16 марта 2011

i[1] - это объект типа int, а не экземпляр этого типа. Попытка преобразовать этот тип объекта в целое число похожа на вызов int(int).

1 голос
/ 16 марта 2011

<type 'int'> - это то, что вы получите, если сделаете i[1] = int, поэтому я предполагаю, что где-то у вас есть i[1] = int вместо i[1] = int(...).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...