【问题标题】:python 2.7.5+ print list without spaces after the commas逗号后没有空格的python 2.7.5+打印列表
【发布时间】:2014-03-06 19:16:47
【问题描述】:

我愿意

print [1,2]

但我希望打印以 [1,2] 格式输出 逗号后没有多余的空格。

我需要一些“stdout”功能吗?`

Linux2 上的 Python 2.7.5+(默认,2013 年 9 月 19 日,13:48:49)[GCC 4.8.1]

【问题讨论】:

标签: python list python-2.7 printing format


【解决方案1】:

手中的数据是一个数字列表。因此,首先我们将它们转换为字符串,然后使用str.join 函数加入连接字符串,然后使用str.format[{}] 的格式打印它们,这里{} 表示实际连接的字符串。

data = [1,2, 3, 4]
print(data)                                       # [1, 2, 3, 4]
print("[{}]".format(",".join(map(repr, data))))   # [1,2,3,4]

data = ['aaa','bbb', 'ccc', 'ddd']
print(data)                                       # ['aaa', 'bbb', 'ccc', 'ddd']
print("[{}]".format(",".join(map(repr, data))))   # ['aaa','bbb','ccc','ddd']

如果你使用的是字符串

数据 = ['aaa','bbb', 'ccc', 'ddd'] print("[{}]".format(",".join(map(repr, data))))

或者更简单,用repr函数获取列表的字符串表示,然后用空字符串替换所有空格字符。

print(repr(data).replace(" ", ""))                 # [1,2,3,4]

注意:如果您正在处理字符串并且字符串中包含空格字符,则替换方法将不起作用。

【讨论】:

  • data = ['aaa','bbb', 'ccc', 'ddd'] print("[{}]".format(",".join(map(str, data) ))) # [aaa,bbb,ccc,ddd] 如何保留引号?
  • @user1614113 请考虑accepting this answer,如果它真的对你有帮助的话。我看到你没有接受你之前问题的任何答案。如果您的所有问题的答案都不被接受,人们可能会对回答您的问题失去兴趣。
  • @user1614113 我更新了我的答案。现在回答你的问题了吗?
【解决方案2】:

可以使用repr,然后去掉所有空格:

>>> print repr([1,2]).replace(' ', '')
[1,2]

确保每个元素中都没有空格。

【讨论】:

  • OP 也想使用字符串。试试["abc def"]
  • 不。试试我之前评论中的输入。
猜你喜欢
  • 2017-11-22
  • 2023-01-17
  • 1970-01-01
  • 2012-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-13
  • 2021-07-20
相关资源
最近更新 更多