小编Rus*_*man的帖子

在Python 3.3中执行代码时出现看似随机的错误

下面是我编写的程序的一部分代码,这些程序非常基本.

pc1 = random.choice(cards)
cca1 = random.choice(cards)
while (pc1 == cca1):
    cca1 = random.choice(cards)
ccb1 = random.choice(cards)
while (pc1 == ccb1) or (cca1 == ccb1):
    ccb1 = random.choice(cards)
Run Code Online (Sandbox Code Playgroud)

pc1,cca1ccb1只是变量名,缩短了易用性.这部分代码的作用是尝试从名为cards的字典中获取3个条目.它使用while函数来确保所选卡片不相同; 他们永远是不同的.

这种情况一直持续到我的52字典中有9个唯一变量,除了有时会产生以下错误之外它工作正常:

Traceback (most recent call last):
  File "C:\Python33\Programs\Poker\1.0.py", line 231, in <module>
    ccc2 = random.choice(cards)
  File "C:\Python33\lib\random.py", line 252, in choice
    return seq[i]
KeyError: 0
Run Code Online (Sandbox Code Playgroud)

上面(ccc2)错误中的变量只是先前显示的代码的延续,并且该变量可能导致错误每次都发生变化.

有时只会出现错误(有时程序运行正常,有时会显示错误),并且它出现的行也随着每个外观而变化.我理解我的代码效率低下但我真的只是想停止这个错误,也许还有一些关于如何改进的有用的想法/提示.

再来一次; 做它应该但不明确地返回在看似随机的时间提到的错误与一个看似随机的原因网站.

提前致谢!

python python-3.x keyerror

0
推荐指数
1
解决办法
380
查看次数

标签 统计

keyerror ×1

python ×1

python-3.x ×1