如何在Python编写的骰子Roller中统计《吸血鬼:避世血族》的判定成功数
实现方案
你只需要新增成功次数统计逻辑、补全必要的模块导入、适配输出的单复数格式即可,修改后的完整可运行代码如下:
import random # d 为投掷的骰子数量 def roll(d): return [random.randint(1, 10) for i in range(d)] # 主程序 d = int(input("\nHow many dice are you rolling? > ")) results = roll(d) # 统计点数≥6的成功次数 success_count = sum(1 for res in results if res >= 6) print(results) # 适配单复数输出 print(f"{success_count} success{'es' if success_count != 1 else ''}")
核心修改说明
- 补全
random模块导入:原代码调用了randint但没有导入对应模块,直接运行会抛出名称错误。 - 成功次数统计:用生成器表达式遍历所有投掷结果,每遇到一个≥6的结果就计数1次,求和后得到总成功数,逻辑直观易读,也可以换成新手更容易理解的循环写法:
success_count = 0 for res in results: if res >= 6: success_count += 1 - 单复数适配:输出时判断成功次数,如果不等于1就自动加
es后缀,匹配英文表达习惯。
运行后就会完全符合你给出的输出示例要求。
内容的提问来源于stack exchange,提问作者Gloompunk
相关产品推荐
相关产品推荐

