python如何打印带双引号的字符串列表

2024-05-18 14:51:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一张单子

my_list = ['a', 'b', 'c', 'd','e','f']

我想用管道或逗号分隔的格式打印出来,但是因为我的一些列表对象可以有逗号或管道,所以我想在打印时用双引号将每个对象括起来

也就是说,输出应该是

"a"|"b"|"c"|"d"|"e"|"f" rather than a|b|c|d|e|f

我不能在我的python版本上使用格式


Tags: 对象版本列表管道my格式list单子
3条回答
>>> "|".join(['"{0}"'.format(x) for x in my_list])
"a"|"b"|"c"|"d"|"e"|"f"

创建格式化每个元素的生成器,然后将其解压缩并使用自定义分隔符。如果您使用的是Python 2,请首先使用import函数(这也可以在Python 3中安全地完成):

>>> from __future__ import print_function
>>> print(*('"{}"'.format(item) for item in my_list), sep='|')
"a"|"b"|"c"|"d"|"e"|"f"

别自己动手。你在处理所有的要案时都会被绊倒的。(如果字段中可以有双引号呢?)请改用^{}模块:

s = StringIO()
writer = csv.writer(s, delimiter="|")
writer.writerow(["a", "b", "c", "d,", "e|", "foo\"bar"])
print i.getvalue()

你得到:

a|b|c|d,|"e|"|"foo""bar"

相关问题 更多 >

    热门问题