Python 将长列拆分为几列,并排打印
使用此代码:Python 将长列拆分为几列,并排打印,python,python-3.x,multiple-columns,Python,Python 3.x,Multiple Columns,使用此代码: import string for i, j in enumerate(string.ascii_uppercase, 1): print('{}: {}'.format(i, j)) 我得到以下输出: 1: A 2: B 3: C 4: D 5: E 6: F 7: G 8: H 9: I 10: J 11: K 12: L 13: M 14: N 15: O ... 我要找的是: 0: A 5: F .... 1
import string
for i, j in enumerate(string.ascii_uppercase, 1):
print('{}: {}'.format(i, j))
我得到以下输出:
1: A
2: B
3: C
4: D
5: E
6: F
7: G
8: H
9: I
10: J
11: K
12: L
13: M
14: N
15: O
...
我要找的是:
0: A 5: F ....
1: B 6: G
2: C 7: H
3: D 8: I
4: E 9: J
5: F 10: K
有没有一种方法可以将一个长的列拆分成较小的列并并排打印
(注意:以上示例仅用于说明输出。实际打印的内容可能会非常不同)对于Python3,如果需要按列打印,可以尝试此功能-
def listPrinter(lst, cols):
l = len(lst)
rs = int(l/cols)
for i in range(rs):
for j in range(cols):
print(lst[i + rs*j] , end='\t')
print('')
请注意,上述函数的参数lst
是要打印的内容列表
然后使用-
lst = []
for i, j in enumerate(string.ascii_uppercase, 1):
lst.append('{}: {}'.format(i, j))
listPrinter(lst,2)
这将产生-
1: A 14: N
2: B 15: O
3: C 16: P
4: D 17: Q
5: E 18: R
6: F 19: S
7: G 20: T
8: H 21: U
9: I 22: V
10: J 23: W
11: K 24: X
12: L 25: Y
13: M 26: Z
以下是一种更简单的方法,无需更改脚本:
import string
for i, j in enumerate(string.ascii_uppercase, 1):
if(i%2==0):
print('{}: {}'.format(i, j))
else:
print('{}: {}\t'.format(i, j)),
打印
0,1,2\n 3,4,5
会更容易吗?可以行方式打印吗,比如第一行打印0:a1:B
,第二行打印2:c3:D
,等等?@AnandSKumar必须是列方式。@user5061 AnandSKumar解决方案是列方式吗?什么定义了行数?