【发布时间】:2020-10-02 20:29:58
【问题描述】:
我正在用 python3 编写一个程序来保持 N 名玩家的分数,并且无法让每个玩家正确输入分数。粗体代码是我遇到问题的地方。在我输入第一个参赛者的分数后循环关闭,并且由于某种原因 i 等于 3,而不是从 0 增加到 1。我希望随着循环的继续而更新“i”,以便获取分数的代码继续直到每个玩家已计分。
我不知道如何得到我想要的结果。我是否使用了错误的循环语句?
我尝试过 while、if 和 for 语句。
我周二才开始编码,非常感谢任何帮助。
import csv
from array import *
names = []
con = int(input("Number of Contestants: "))
maxSurfers = con #number of surfers
while len(names) < maxSurfers:
name = input(" Enter your Name: ")
names.append(name)
print("Contestants")
print(names)
else:
print("Thank You for Participating!\n")
print("Sign up is now closed")
**score = array('f', [])
i = 0
n = int(input("Number of Waves for "+names[i]+": "))
while i != n:
x=float(input("Enter score for each wave: "))
score.append(x)
i = i + 1
print(i)
print("Winner being decided.")**
outputs:
Number of Contestants: 2
Enter your Name: frank
Contestants
['frank']
Enter your Name: bart
Contestants
['frank', 'bart']
Thank You for Participating!
Sign up is now closed
Number of Waves for frank: 3
Enter score for each wave: 9.6
Enter score for each wave: 7.8
Enter score for each wave: 7.2
3
Winner being decided.
【问题讨论】:
标签: arrays python-3.x list if-statement while-loop