我正在尝试编写Suduoku游戏。每次使用数字时,都需要将其从列表中删除。
我已经尝试过.pop[1]
,但是当数字为1时它什么也没做。
import random
rownum1 = ["1","2","3","4","5","6","7","8","9"]
print(random.choice(rownum1))
if random.choice(rownum1) == "1":
del rownum1[0]
print(rownum1)
如果随机选择一个,我希望输出为:
["2","3","4","5","6","7","8","9"]
但是当随机选择一个时什么也没发生。
答案 0 :(得分:0)
您要选择一个随机字符串,将其打印出来,然后选择另一个字符串并将其与“ 1”进行比较!
每次调用random.choice(rownum1)
时,都会得到一个新的随机字符串。正确执行操作的正确方法是将随机字符串存储在变量中:
import random
rownum1 = ["1","2","3","4","5","6","7","8","9"]
num = random.choice(rownum1) # <- store the value in a variable for later reuse
print(num)
if num == "1":
del rownum1[0]
print(rownum1)
答案 1 :(得分:-1)
在特定列表上执行.pop [1]的问题在于列表中的项是字符串,而1是整数。因此,您必须执行.pop(“ 1”)才能从列表中删除“ 1”。