У меня есть список, и каждый раз, когда я ввожу «N» в свою программу, я хочу, чтобы список печатал содержимое следующего индекса.цикл через индекс списка python
categories = ["Produce", "Meat", "Dairy" ,"Misc"]
...
elif item == "N":
for d in categories[:1]:
d = categories[0]
d += 1
print(d)
Я понимаю, что приведенный выше код пытается добавить целое число в строку и выбросить ошибку. То, что я не смог выяснить, - это увеличить индекс.
Я рассмотрел несколько других сообщений, касающихся похожих проблем, но это решения не нажимают на меня вне контекста.
Пример вывода о том, что он должен выглядеть
Add Item to list
Produce
>>Tomatoes
>>Grapes
Meat
>>Hamburger
Dairy
>>
Вся программа
def add_item():
exit_list = ["F", "Finished"]
lists = []
start = input("Would you like to add an item to the list? Y/N")
print("Add Item to list")
categories = ["Produce", "Meat", "dairy","snacks/boxed goods", "Cans", "Misc"]
print(categories[0])
while start in ('y', 'Y'):
item = input(">>")
if item in exit_list:
break
elif item == "N":
for d in categories[:1]:
i = 0
i +=1
d = categories[i]
print(d)
elif item:
lists.append(item)
else:
print("ok")
print(lists)
return lists
add_item()
Обратите внимание, что отступы большим дело в питоне. Быть осторожен. (Строка 'for' неверна). И вы должны объяснить, что именно вы хотите сделать, чтобы мы предложили наилучший способ сделать это. Если я правильно понял вас, вам не нужен цикл for, просто индекс. – keyser
@keyser Это была моя ошибка с добавлением кода здесь. Код правильно отступом в программе. – Shilo
@ Cs142 Вам нужно больше объяснить, что вы пытаетесь сделать, мы не можем понять это просто вашим кодом. –