[英]Add a newline after three numbers in a list
我想在我附加到列表中的三件事之后添加一个新行。
例如,在我的代码中,我将for
从 1 到 100 的循环,并且每个循环都将i
添加到列表中,我的问题是我不知道如何执行每个循环,它会在我的result
添加一个新行list ,所以输出将是:
1, 2, 3
4, 5, 6
7, 8, 9
.....
电流输出:
它只是将所有数字添加给我,而无需换行。
1, 2, 3, 4, 5, 6, 7, 8, 9......
代码:
first = []
second = []
third = []
result = []
for i in range(1, 101):
first.append(i)
second.append(i)
third.append(i)
result.append(third + second + third)
result.append('\n')
print(result)
也许是这样的? 如果您需要更多详细信息,请告诉我。
for i in range(30):
print('%3d, ' %i, end='')
if (i+1) % 3 == 0:
print()
输出:
0, 1, 2,
3, 4, 5,
6, 7, 8,
9, 10, 11,
12, 13, 14,
15, 16, 17,
18, 19, 20,
21, 22, 23,
24, 25, 26,
27, 28, 29,
如果您的目标是生成一个包含"\\n"
作为每三个元素的列表,则可以使用模数运算符每 3 个条目添加一个"\\n"
来实现此目的。
result = []
for i in range(1, 101):
result.append(i)
if len(result) % 3 == 0:
result.append("\n")
编辑:
为清楚起见,为了打印result
列表,请使用以下行
print(''.join(str(x) for x in result))
这将产生输出
123
456
789
...
result = ""
for i in range(1,101):
result += f"{i}" + (", " if i % 3 else "\n")
print(result)
以最少的麻烦实现它。 当索引除以 3 没有余数时,它将在字符串中开始一个新行。 尽管一旦数字变大,将输出分开可能会更好。
result = ""
for i in range(1,101):
result += f"{i}" + (",\t" if i % 3 else "\n")
您可以使用%
运算符和print
的sep
参数获取输出,如下所示:
same_line = []
for i in range(1, 101):
same_line.append(i)
if not i % 3 or i == 100:
print(*(value for value in same_line), sep=', ')
same_line = []
>>>
1, 2, 3
4, 5, 6
7, 8, 9
10, 11, 12
13, 14, 15
16, 17, 18
19, 20, 21
22, 23, 24
25, 26, 27
28, 29, 30
31, 32, 33
34, 35, 36
37, 38, 39
40, 41, 42
43, 44, 45
46, 47, 48
49, 50, 51
52, 53, 54
55, 56, 57
58, 59, 60
61, 62, 63
64, 65, 66
67, 68, 69
70, 71, 72
73, 74, 75
76, 77, 78
79, 80, 81
82, 83, 84
85, 86, 87
88, 89, 90
91, 92, 93
94, 95, 96
97, 98, 99
100
这是你需要的:
temp = []
for i in range(100):
temp.append(i)
if i % 3 == 0:
print(temp)
temp = []
输出:
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
...
[97, 98, 99]
这可以使用 zip 和一些棘手的列表操作在没有循环的情况下完成:
list(sum(zip(*[iter(range(1, 101))]*3, ['\n']*100), tuple()))
输出:
[1, 2, 3, '\n', 4, 5, 6, '\n', 7, 8, 9, '\n', 10, 11, 12, '\n', 13, 14, 15, '\n',16, 17, 18, '\n', 19, 20, 21, '\n', 22, 23, 24, '\n', 25, 26, 27, '\n', 28, 29, 30, '\n', 31, 32, 33, '\n', 34, 35, 36, '\n', 37, 38, 39, '\n', 40, 41, 42, '\n', 43, 44, 45, '\n', 46, 47, 48, '\n', 49, 50, 51, '\n', 52, 53, 54, '\n', 55, 56, 57, '\n', 58, 59, 60, '\n', 61, 62, 63, '\n', 64, 65, 66, '\n', 67, 68, 69, '\n', 70, 71, 72, '\n', 73, 74, 75, '\n', 76, 77, 78, '\n', 79, 80, 81, '\n', 82, 83, 84, '\n', 85, 86, 87, '\n', 88, 89, 90, '\n', 91, 92, 93, '\n', 94, 95, 96, '\n', 97, 98, 99, '\n']
如果您希望将其打印为原始示例,请使用以下内容:
print(*map(', '.join, zip(*[iter(map(str, range(1, 101)))]*3)), sep='\n')
输出:
1, 2, 3
4, 5, 6
7, 8, 9
10, 11, 12
13, 14, 15
16, 17, 18
19, 20, 21
22, 23, 24
25, 26, 27
28, 29, 30
31, 32, 33
34, 35, 36
37, 38, 39
40, 41, 42
43, 44, 45
46, 47, 48
49, 50, 51
52, 53, 54
55, 56, 57
58, 59, 60
61, 62, 63
64, 65, 66
67, 68, 69
70, 71, 72
73, 74, 75
76, 77, 78
79, 80, 81
82, 83, 84
85, 86, 87
88, 89, 90
91, 92, 93
94, 95, 96
97, 98, 99
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.