1

だから、基本的には、入力後にyes/noを入力しないと関数が進まないようにしようとしています。この関数は、入力をリストに追加するだけです。基本的には、プログラムにさまざまな数字を入力させるようにしたいのですが、入力の最後に続行するかどうか尋ねられます。はいを押すと、関数を続行したいのですが、私のコードでは、各入力が同じ行ではなく新しい入力行になるように作成したので、リストに追加するときにしばらく使用しています声明。

さらに明確にする必要がある場合は、お知らせください。

コード:

next2=input("How many would you like to add? ")
print("")
count = 0
while count < int(next2):
    count = count + 1
    next3=input(str(count) + ". Input: ")
    add(next3)
print("")
check=input("Are you sure? (Y/N) ")
while check not in ("YyYesNnNo"):
    check=input("Are you sure? (Y/N) ")
if check in ("YyYes"):
    home()

関数:

def add(next2):
    numbers.append(next2)
    sort(numbers)

このプログラムを実行すると、次のようになります。

How many numbers would you like to add? "4"
1. Input: 4
2. Input: 3
3. Input: 2
4. Input: 1

Are you sure? (Y/N): Y

> append the inputs here

いいえをクリックすると、既にセットアップしたプログラムのホーム画面に移動します。

これが現在の動作です。

何個の数字を追加しますか? "4" 1. 入力: "4"

リスト 2 に追加します。入力: "3" リスト 3 に追加します。入力: "2" リスト 4 に追加します。入力: "1" リストに追加しますか? (Y/N): "Y" リストを並べ替えて表示する

4

1 に答える 1

2

ループ内で add 関数を呼び出しているため、それらを入力すると (確実かどうかを尋ねる前に) リストに追加されます。それらを一時的な構造に保存し、それらが確実であることを確認した後にのみ追加したいとします。

next2=input("How many would you like to add? ")
print("")
count = 0
inputs = []
while count < int(next2):
    count = count + 1
    next3=input(str(count) + ". Input: ")
    inputs += [next3]
print("")
check=input("Are you sure? (Y/N) ")
while check not in ("YyYesNnNo"):
    check=input("Are you sure? (Y/N) ")
if check in ("YyYes"):
    for userInput in inputs:
        add(userInput)
else:
    home()
于 2013-10-30T16:11:44.393 に答える