Python 格式化数字列表中的字符串

Python 格式化数字列表中的字符串,python,python-3.x,Python,Python 3.x,我有一个整数列表l=[1,2,3,4,5,6],我想以格式化的方式打印它们: [1,2][3,4][5,6] 如何以简单的方式获得此结果?我试过使用: print("[%d, %d] [%d, %d] [%d, %d]" % l) 但它不起作用,因为l不是一个数字。任何关于如何实现这一效果的建议都将不胜感激 我知道我可以用 print("[", l[0], "," ,1[1] ... 但这是一种丑陋而低效的代码编写方式,我们希望有一种更好的方式 如果元素数量固定,我们可以尝试以下方法:

我有一个整数列表
l=[1,2,3,4,5,6]
,我想以格式化的方式打印它们:

[1,2][3,4][5,6]

如何以简单的方式获得此结果?我试过使用:

print("[%d, %d] [%d, %d] [%d, %d]" % l) 
但它不起作用,因为
l
不是一个数字。任何关于如何实现这一效果的建议都将不胜感激

我知道我可以用

  print("[", l[0], "," ,1[1] ...

但这是一种丑陋而低效的代码编写方式,我们希望有一种更好的方式

如果元素数量固定,我们可以尝试以下方法:

lst = [1, 2, 3, 4, 5, 6]
print('[{}, {}] [{}, {}] [{}, {}]'.format(*lst))

=> '[1, 2] [3, 4] [5, 6]'

如果元素数量固定,我们可以尝试以下方法:

lst = [1, 2, 3, 4, 5, 6]
print('[{}, {}] [{}, {}] [{}, {}]'.format(*lst))

=> '[1, 2] [3, 4] [5, 6]'
印刷品:

[1, 2] [3, 4] [5, 6]
印刷品:

[1, 2] [3, 4] [5, 6]

通过从列表中创建迭代器并压缩迭代器本身,可以成对地对列表项进行分组:

i = iter(l)
print(*map(list, zip(i, i)))
这将产生:

[1, 2] [3, 4] [5, 6]

通过从列表中创建迭代器并压缩迭代器本身,可以成对地对列表项进行分组:

i = iter(l)
print(*map(list, zip(i, i)))
这将产生:

[1, 2] [3, 4] [5, 6]
这个怎么样

l = [1,2,3,4,5,6]
evens = [i for i in l if i % 2 == 0]
odds = [i for i in l if i % 2 != 0]

zip(evens, odds)
这个怎么样

l = [1,2,3,4,5,6]
evens = [i for i in l if i % 2 == 0]
odds = [i for i in l if i % 2 != 0]

zip(evens, odds)
还是这个

l = [1,2,3,4,5,6,7,8]

print( *[ (l[2*i], l[2*i+1] ) for i in range(0,len(l)//2)])
产生
[1,2][3,4][5,6]

或此

l = [1,2,3,4,5,6,7,8]

print( *[ (l[2*i], l[2*i+1] ) for i in range(0,len(l)//2)])
产生
[1,2][3,4][5,6]

您可以打印三个单独的列表片段:
打印(“%s%s%s”%(l[:2],l[2:4],l[4:)
您可以打印三个单独的列表片段:
打印(“%s%s%s”%(l[:2],l[2:4])
我认为模式是每一对连续的元素,不管它们的价值。我认为模式是每一个连续的元素对,不管它们的价值。