Я пытаюсь создать функцию, которая будет печатать элемент в списке.Однако я хочу, чтобы я мог печатать следующий элемент каждый раз, когда функция используется в операторе If.Вот что я получил:
import random
index = 0
list1 = ['one', 'two', 'three', 'four', 'five', ]
list2 = ['uno', 'dos', 'tres', 'cuatro', 'cinco', ]
def reshuffle(list):
global index
if index < len(list):
print(list[index])
index += 1
elif index == len(list):
random.shuffle(list)
index = 0
print(list[index])
index += 1
while True:
user_input = input("Enter command: ")
if user_input == "e":
print(reshuffle(list=list1))
if user_input == "s":
print(reshuffle(list=list2))
Что происходит, когда функция распечатывает все элементы в списке с помощью оператора if, она перемешивает их и начинает заново.Это делается с помощью индекса, но каждый раз, когда функция используется более чем одним оператором if, она считывает одну и ту же переменную.Выходные данные выглядят так:
Enter command: e
one
None
Enter command: e
two
None
Enter command: s
tres
None
Enter command: s
cuatro
None
Я хочу, чтобы это было сделано:
Enter command: e
one
None
Enter command: e
two
None
Enter command: s
uno
None
Enter command: s
dos
None
Как можно, чтобы каждый вызов функции использовал одну и ту же переменную независимо, без ее сброса?Или, если есть другой способ приблизиться к этому, любая помощь будет оценена.