Исходя из JS, цикл по списку с использованием для l oop работает как я ожидал.
spam = ['bat', 'nap', 'hat']
for x in spam:
print(spam[x])
Печатает файл ошибки "", строка 2, в печати (спам [x]) TypeError: индексы списка должны быть целыми или кусочками, а не str
, в то время как
for x in range(len(spam)):
print(spam[x])
Печатает
bat
nap
hat
Теперь я понимаю, как выполнять итерации список, но я не совсем уверен в логике c этого. Почему
range(len(spam))
выводит правильный результат? Насколько я понимаю, len (спам) просто возвращает целочисленное значение (3) в этом случае, которое затем упрощается до диапазона (3)?
Может быть, я только что ответил на свой вопрос - но это потому, что python теперь знает, сколько раз перебирать спам со спамом [x]?