为了账号安全,请及时绑定邮箱和手机立即绑定

如何在python中的对之间打印没有逗号的对列表?

如何在python中的对之间打印没有逗号的对列表?

www说 2022-07-12 17:43:59
我有两个相同大小的列表a = [1, 2, 3, 4, 5]和b = [2, 3, 4, 5, 6]我想打印压缩列表zip(a, b),但对之间没有逗号,如下所示:c = [(1, 2) (2, 3) (3, 4) (4, 5) (5, 6)]当我做print(str(list(zip(a, b))).replace(',', ''))我明白了[(1 2) (2 3) (3 4) (4 5) (5 6)]这会删除所有逗号,甚至每对中的逗号,(1 2).我希望输出像[(x, y) (z, t) (u, v) ...]
查看完整描述

3 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

您可以使用更具体的参数replace

print(str(list(zip(a, b))).replace('), (', ') ('))


查看完整回答
反对 回复 2022-07-12
?
函数式编程

TA贡献1807条经验 获得超9个赞

print("[" + " ".join(map(str, zip(a, b))) + "]")

或者

print("[", " ".join(map(str, zip(a, b))), "]", sep="")


查看完整回答
反对 回复 2022-07-12
?
交互式爱情

TA贡献1712条经验 获得超3个赞

您可以将 f-string 与 str 一起使用join

f"[{', '.join([str(e).replace(',','') for e in c])}]"

或者您可以使用正则表达式:

import re
 re.sub('\([^()]*\)', lambda x: x.group().replace(",", ""), str(c))

输出:

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


查看完整回答
反对 回复 2022-07-12
  • 3 回答
  • 0 关注
  • 310 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号