请求优化Python掷骰子程序的输出格式
掷骰子功能格式修正方案
核心修改方向
- 生成包含所有骰子点数的列表,而非逐行打印单个点数
- 简化输入合法性判断逻辑,避免冗余代码
- 直接输出列表,Python默认会呈现
[元素1, 元素2, ...]的目标格式
修改后的完整代码
import random def dice_roller(): num = input('Enter a number from [1-20] or "home" to exit: ') # 简化输入验证:先判断是否为数字,再检查范围 if num.isdigit(): num_int = int(num) if 1 <= num_int <= 20: # 用列表推导式一次性生成所有骰子结果 dice_results = [random.randint(1, 6) for _ in range(num_int)] print(dice_results) elif num.lower() == 'home': # 可在此添加退出程序的逻辑,比如直接返回 return
关键改动说明
- 使用列表推导式生成结果,比循环逐个添加元素更简洁高效
- 替换原有的冗长输入判断:通过
isdigit()验证输入为数字,再检查是否在1-20范围内,代码可读性更强 - 直接打印生成的列表,Python会自动输出你需要的
[1,3,2,4,5,4]格式
内容的提问来源于stack exchange,提问作者Oliver Parr
相关产品推荐
相关产品推荐

