如何解决在排序的元组列表中添加换行符\n=
我的元组列表:
b1 = ("八",222,133,343)
b1a = ("丷",3001,61,0)
b2 = ("巴",610,33,281)
b3 = ("白",287,70,838)
b4 = ("百",226,13,383)
b5 = ("办",323,3,279)
b6 = ("半",374,21,495)
b6a = ("勹",46,1)
b6b = ("包",417,37,471)
b7 = ("贝",1424,137,60)
b8 = ("本",76,11,856)
hanzi = [b1,b1a,b2,b3,b4,b5,b6,b6a,b6b,b7,b8]
print(sorted(hanzi,key=lambda hanzi: hanzi[2])
[('办',279),('本',856),('百',383),('半',495),('巴',281),('包',471),('勹',1),('丷',0),('白',838),('八',343),('贝',60)]
我希望它们在如下列中:
[('办',
('本',
('百',
('半',
('巴',
('包',
('勹',
('丷',
('白',
('八',
('贝',60)]
我是python的初学者,不知道在哪里添加'/n':-) 甚至不知道是否可能!我必须自己修改元组吗?
解决方法
如果你只想要每行一个元组,那么你可以用换行符加入代表:
result = sorted(hanzi,key=lambda hanzi: hanzi[2])
print("\n".join(repr(x) for x in result))
或者,使用 sep
:
result = sorted(hanzi,key=lambda hanzi: hanzi[2])
print(*result,sep="\n")
如果您想要列表语法(以 [
开头,中间有逗号,以 ]
结尾),那么您可以改为加入 ,\n
并手动添加 {{1 }} 中:
[]
,
您可以使用pprint
from pprint import pprint
pprint(sorted(hanzi,key=lambda hanzi: hanzi[2]))
,
你可以这样做:
your_list = sorted(hanzi,key=lambda hanzi: hanzi[2])
print(str(your_list).replace("),","),\n"))
,
for item in sorted(hanzi,key=lambda hanzi: hanzi[2]):
print(item)
输出:
('办',323,3,279)
('本',76,11,856)
('百',226,13,383)
('半',374,21,495)
('巴',610,33,281)
('包',417,37,471)
('勹',3001,46,1)
('丷',61,0)
('白',287,70,838)
('八',222,133,343)
('贝',1424,137,60)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。