我的代码没有产生我希望它做的正确输出。这是我的代码:
def rows(numbers):
count = 0
for i in numbers:
if count == 3:
print(i, end = " ")
count = 0
else:
print(i, end = " ")
count += 1
接下来,我将向您展示我的程序中的输出,然后输出正确的输出(请注意,这些数字是随机的):
91 77 14 36 1 88 13 88 19 40 90
正确的输出显示:
91 77 14 36
1 88 13 88
19 40 90
答案 0 :(得分:1)
您的代码问题很简单。当count
等于3
时,希望在打印出最后一位数后添加换行符,否则下一组4个数字将打印在同一行。总而言之,这就是你要做的:
if count == 3:
print(i)
count = 0
另一种解决此问题的方法是将输入分成小列表并分别打印。
for i in range(0, len(numbers), 4):
print(*numbers[i:i + 4])
91 77 14 36
1 88 13 88
19 40 90
使用python的列表切片表示法一次获取4个数字的切片[i : i + 4]
,然后使用print
参数调用*
来解压缩它们。