我在这里要做的是让用户输入任何数字,然后让用户输入任何名称,然后将此输入存储在列表中。
但是,当我输入任何数字时,它只要求输入一次名称,并在列表中显示输出:
def main():
# a = 4
a = input("Enter number of players: ")
tmplist = []
i = 1
for i in a:
pl = input("Enter name: " )
tmplist.append(pl)
print(tmplist)
if __name__== "__main__":
main()
输出:
Enter number of players: 5
Enter name: Tess
['Tess']
我想要的是,for循环应该运行5次,用户输入的5个值存储在一个列表中。
你得到了一个字符串
a
,大概包含了类似'5'
的内容。然后初始化计数器i
。然后循环遍历这个字符串,因为它是'5'
,导致了一次迭代,因为'5'
中只有一个字符。首先你必须用
a = int(a)
把它改成一个数字。使用
a
作为一个数字,您仍然不能循环通过它,因为数字不是一个iterable。因此,您应该创建一个
range
对象来循环使用for i in range(a):
。然后你就可以按预期进行手术了。
您需要将播放器的数量转换为整数,然后循环那么多次,您可以使用^{} 函数来实现这一点。示例-
因为你用的是Python3
表示
a
是字符串“5”。因为这只有一个字符长-循环将只运行一次你需要使用
你还需要改变循环
我建议使用更有意义的变量名-特别是如果这是家庭作业
相关问题 更多 >
编程相关推荐