【发布时间】:2018-04-06 15:12:29
【问题描述】:
我有这个 python 3 脚本,它应该比较两个列表并找到相等的数字。这是一场奶牛和公牛的比赛。不会过多介绍细节,但这就是问题所在。当我要求用户输入作为列表时,它返回字符串列表而不是整数,因此如果是整数,我无法将元素与给定列表进行比较。请告知如何将userinput 列表转换为数字列表:脚本如下:
import random
numtoguess = [random.randrange(0,10,1) for _ in range (4)]
print(numtoguess)
userinput = []
while numtoguess != userinput:
userinput = list(input("Welcome to Cows and Bulls game!!! \nGuess the random 4 digit number :> "))
print(userinput)
cows = 0
bulls = 0
counter = 0
for i in userinput:
if i in numtoguess and i == numtoguess[counter]:
bulls += 1
elif i in numtoguess and i != numtoguess[counter]:
cows += 1
counter += 1
print('Cows: ' + str(cows))
print('Bulls: ' + str(bulls))
【问题讨论】:
-
做
userinput = [int(x) for x in input("Welcome to Cows and Bulls game!!! \nGuess the random 4 digit number :> ")] -
@Aran-Fey。关闭但重复拆分数字“单词”,不迭代字符
-
嗯。那么我们可以将this添加到列表中。
-
这能回答你的问题吗? Convert all strings in a list to int
标签: python python-3.x list arraylist