関数の先頭に戻ろうとしています (再起動するのではなく、先頭に移動します) が、これを行う方法がわかりません。長いコードを提供する代わりに、私が欲しいものの例を作るつもりです:
used = [0,0,0]
def fun():
score = input("please enter a place to put it: ")
if score == "this one":
score [0] = total
if score == "here"
if used[1] == 0:
score[1] = total
used[1] = 1
elif used[1] == 1:
print("Already used")
#### Go back to score so it can let you choice somewhere else.
list = [this one, here]
戻ることができるようにする必要があるため、基本的に、メモリを消去せずに「ここ」を再度使用しようとしたことを忘れてしまいます。それらがひどいことは知っていますが、基本的には行く必要がありますが、Pythonには存在しません。何か案は?
*編集: 申し訳ありませんが、既に使用されている場合は、別の場所を選択できるようにする必要があることを忘れていました (コードを行き詰まらせたくありませんでした)。score == "this one" を追加しました。つまり、"here" に入れようとすると、"here" は既に使用されているため、score = input("") をやり直すオプションが表示され、それから取ることができます。その値を「ここ」ではなく「これ」に挿入します。あなたのループステートメントは先頭に戻りますが、見つけたばかりの値を別の場所に置くことはできません。これが理にかなっていることを願っています:p