python - pygame : while 运行一次并停止
问题描述
我想制作一个绘制六个数字的程序。请帮我。当按下(A)按钮时,它运行一次并停止。如果我想多次运行它应该怎么做?
numT = []
team = random.randint(1, 6)
if event.type == pygame.KEYDOWN:
if event.key == event.key == ord('a'):
for i in range(6):
while team in numT:
team = random.randint(1, 6)
numT.append(team)
num1 = font.render(str(numT), True, (255, 255, 255))
screen.blit(num1, (200, 117))
我想要的结果(在 pygame 屏幕上):示例
[1, 3, 5, 2, 6, 4]
解决方案
如果要生成新序列,则必须使用numT = []
或清除旧序列numT.clear()
。
但是,可以使用以下方式简化 conde random.shuffle()
:
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_a:
numT = list(range(1, 7))
random.shuffle(numT)
num1 = font.render(str(numT), True, (255, 255, 255))
推荐阅读
- python - 沿维度的点积
- javascript - 在 Javascript 中更改组合框的值
- python - 迭代时出现索引错误
- excel - VBA - 如何根据一个提供两个条件的单元格复制行两次
- c# - 参数错误 - 无法从接口转换为类
- javascript - 对 express 服务器的第二个 HTTP Get 请求失败且没有错误
- php - PDO bindValue 不允许特定参数通过 (PHP)
- javascript - 访问外部的最佳方法是什么
来自 JS 类中的内部嵌套构造函数的原型? - gdscript - 线性插值 GDscript
- java - Java Spring Boot 找不到在默认方法上使用 @Bean 注释的 bean