Я новичок в Python. Вот простой код, который я написал для печати x^3
return and yield TypeError: объект 'int' не итерируется
def f(n):
for x in range(n):
yield x**3
for x in f(5):
print x
Какой печати правильного ответа.
def f(n):
return [x**3 for x in range(n)]
for x in f(5):
print x
который также напечатать правильный ответ
def f(n):
for x in range(n):
return x**3
for x in f(5):
print x
, который я получил
TypeError: 'int' object is not iterable
Так что же случилось с третьей части кода.
'f (5)' возвращает целое число – wim
для вашего третьего 'f' возвращает int ONCE (первая итерация) (напоминание о том, что вызов' return' будет немедленно выходить из метода) –
ваши другие две функции возвращают i , итератора и ii. Список –