jeśli mam to:Wywoływanie zmienna zdefiniowana wewnątrz jednej funkcji z innej funkcji
def oneFunction(lists):
category=random.choice(list(lists.keys()))
word=random.choice(lists[category])
def anotherFunction():
for letter in word: #problem is here
print("_",end=" ")
już wcześniej zdefiniowane lists
, więc oneFunction(lists)
działa idealnie.
Mój problem jest wywołanie word
w linii 6. Próbowałem zdefiniować word
poza pierwszej funkcji z tym samym word=random.choice(lists[category])
definicji, ale sprawia, że word
zawsze taki sam, nawet jeśli zadzwonię oneFunction(lists)
.
Chcę móc, za każdym razem, gdy wywołuję pierwszą funkcję, a następnie drugą, mam inną word
.
Czy mogę to zrobić bez definiowania tego word
poza oneFunction(lists)
?
Dlaczego nie przekazać "słowa" jako argumentu do "anotherFunction"? Rozważ "def anotherFunction (word):" i wywołanie go odpowiednio. –