Python 在列表中循环10个空格以输出到表的格式修饰符是什么?
如果我有一组数字或单词的列表,我应该使用什么格式修改器将其输出到一个表中,每行有一个空格和十个数字/单词Python 在列表中循环10个空格以输出到表的格式修饰符是什么?,python,list,formatting,Python,List,Formatting,如果我有一组数字或单词的列表,我应该使用什么格式修改器将其输出到一个表中,每行有一个空格和十个数字/单词 list = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390, 420, 450, 480, 510, 540, 570, 600] output table: 30 60 90 120 150 180 210 240 270 300 330 360 390 420 450 480 510 540 570 600
list = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390,
420, 450, 480, 510, 540, 570, 600]
output table:
30 60 90 120 150 180 210 240 270 300
330 360 390 420 450 480 510 540 570 600
首先,在重写python函数时,不要将
list
用作变量名。请尝试以下操作:
list1 = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390, 420, 450, 480, 510, 540, 570, 600]
result = ''
for i in range(0, len(list1), 10):
result += ''.join(' '.join([str(x) for x in list1[i:i+10]])) + '\n'
print(result)
首先,在重写python函数时,不要将
list
用作变量名。请尝试以下操作:
list1 = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390, 420, 450, 480, 510, 540, 570, 600]
result = ''
for i in range(0, len(list1), 10):
result += ''.join(' '.join([str(x) for x in list1[i:i+10]])) + '\n'
print(result)
这允许您指定每行的编号
def create_rows(lst, numbers_per_row):
return [lst[i:i+numbers_per_row] for i in range(0, len(lst), numbers_per_row)]
lst = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390,
420, 450, 480, 510, 540, 570, 600]
for row in create_rows(lst, 10):
print(*row)
输出
30 60 90 120 150 180 210 240 270 300
330 360 390 420 450 480 510 540 570 600
这允许您指定每行的编号
def create_rows(lst, numbers_per_row):
return [lst[i:i+numbers_per_row] for i in range(0, len(lst), numbers_per_row)]
lst = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390,
420, 450, 480, 510, 540, 570, 600]
for row in create_rows(lst, 10):
print(*row)
输出
30 60 90 120 150 180 210 240 270 300
330 360 390 420 450 480 510 540 570 600
使用
itertools.groupby
和enumerate()
将10个元素组成一组:
>>> l = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390, 420, 450, 480, 510, 540, 570, 600]
>>> from itertools import groupby
>>> print('\n'.join(' '.join(str(item[1]) for item in group[1]) \
for group in groupby(enumerate(l), lambda x: x[0]//10)))
30 60 90 120 150 180 210 240 270 300
330 360 390 420 450 480 510 540 570 600
使用
itertools.groupby
和enumerate()
将10个元素组成一组:
>>> l = [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360, 390, 420, 450, 480, 510, 540, 570, 600]
>>> from itertools import groupby
>>> print('\n'.join(' '.join(str(item[1]) for item in group[1]) \
for group in groupby(enumerate(l), lambda x: x[0]//10)))
30 60 90 120 150 180 210 240 270 300
330 360 390 420 450 480 510 540 570 600
@funjunkstorage很高兴我能help@funjunkstorage--来奖励响应者。@funjunkstorage——很高兴我能这么做help@funjunkstorage--为了奖励回应者。我的错只是因为这里的问题。我的实际变量名已输出_list@funjunkstorage那好吧!我的错只是因为这里的问题。我的实际变量名已输出_list@funjunkstorage那好吧!