如何用Python打印指定范围结果,每3个结果间添加空行?
解决方法
方法一:通过索引判断换行时机
利用enumerate获取每个数字的计数位置(从1开始),每当计数是3的倍数时,额外打印一个空行:
for idx, num in enumerate(range(1, 11), start=1): print(num) # 每3个数字后打印空行,避免最后多输出空行 if idx % 3 == 0: print()
方法二:按组批量处理
把数字按每3个一组拆分,每组内逐个打印,组与组之间打印空行(最后一组之后不额外输出):
nums = list(range(1, 11)) # 按步长3遍历分组的起始索引 for i in range(0, len(nums), 3): # 取出当前组的数字 group = nums[i:i+3] for num in group: print(num) # 不是最后一组的话打印空行 if i + 3 < len(nums): print()
方法三:直接用range分组
无需转换列表,通过range的起始值和步长直接分组处理:
# 每组起始值从1开始,步长3 for start in range(1, 11, 3): # 遍历当前组的数字,最多到10 for num in range(start, min(start + 3, 11)): print(num) # 后续还有数字的话打印空行 if start + 3 <= 10: print()
这几种方法都能实现目标输出,其中方法一代码最简洁,适合多数场景。
内容的提问来源于stack exchange,提问作者SMTH
相关产品推荐
相关产品推荐

