Я пытаюсь просмотреть программу внутри нескольких списков, чтобы увидеть, есть ли в этих списках несколько целых чисел. Я получил ответ по предыдущему вопросу, который я попросил выполнить эту задачу. Однако с этим ответом возникла проблема, и я не могу понять, что это такое.TypeError: объект 'int' не является итерабельным
Вот код:
def all_num_in_list(d, numbers):
for n in numbers:
if n not in d:
return False
return True
def all_num_in_any_list(lists, numbers):
for d in lists:
if all_num_in_list(d, numbers):
return True
return False
while a:
try:
for c, row in enumerate(matrix):
if 0 in row:
print("Found 0 on row:", c, "index:", row.index(0))
if 1 not in row:
if all(row[row.index(0)] != 1 for row in matrix):
if all_num_in_any_list([2, 3, 4, 5, 6, 7, 8, 9], [row, box1, all(row[row.index(0)])]):
if all(row[row.index(0)] != 1 for row in matrix):
print ("t")
ошибка, что она рисует это:
if all_num_in_any_list([2, 3, 4, 5, 6, 7, 8, 9], [row, box1, all(row[row.index(0)])]):
TypeError: 'int' object is not iterable
Почему это происходит, как это может избежать, и что именно этот код делает?
Благодаря
У вас есть целое число, в противном случае вы ожидаете иначе. Итак, какое значение (переменная)? –
hess !! это какой-то неприятный вложенный код python – wim
-1 Вы должны были включить трассировку и больше кода. Теперь вы задали столько вопросов, вы должны это знать. –