-3

メニューを複数実行したいのですが、2回目または3回目に実行するときは、プログラムを実行するたびにスコアのリストを更新したいと思います。私が抱えている問題は、リストに新しいスコアを追加した後、プログラムを2回実行したときに新しく追加されたスコアが表示されないことです。これは、スコアのリストがwhileループ内で更新されるためだと推測しています。誰かがこれを修正する方法を知っていますか?助けてください!そしてありがとうございました!

4

1 に答える 1

1

まだコメントを残すことができないので、これを回答に残す必要があります。まず、投稿のインデントは正しいですか。そうでない場合は、while ループに属するすべての行をインデントする必要があるためです。また、これは書式設定の問題ですが、関数定義をすべてのコードの上に移動するか、別のファイルに配置する必要があります。また、 for ループで、必要のない index を多く参照していることにも気付きました。たとえば、 averageScores() は次のように記述できます。

def averageScores():
    s = 0
    for i in scores:
        s += i
    avgScore = s / len(scores)
    print("The average score is: " + str(avgScore))

また、elif 句の下で addScores() を呼び出すと、実際には結果を何にも保存していないことに気付きました。その行を読みたいscores.append(addScores())

于 2012-10-05T02:26:55.880 に答える