【问题标题】:How to repeat characters in Python without string concatenation?如何在没有字符串连接的情况下在 Python 中重复字符?
【发布时间】:2015-06-02 00:33:15
【问题描述】:

我目前正在编写一个进行频率分析的简短程序。但是,有一句话让我很困扰:

"{0[0]}  | " + "[]" * num_occurrences + " Total: {0[1]!s}"

在 Python 中有没有一种方法可以在不使用连接的情况下将某些字符重复任意次数(最好在格式字符串中)?我不觉得我以最 Pythonic 的方式来做这件事。

【问题讨论】:

  • 可以澄清一点,即添加一些琐碎的样本 i/p 和 o/p
  • "{0} | {1} Total: {2!s}".format("Some val", "[]"*10, "not string") 可能就是您要找的。​​span>
  • 不敢相信我没有想到这一点。谢谢!

标签: python string concatenation format-string


【解决方案1】:

重复一个字符或字符串的最好方法是相乘:

>>> "a" * 3
'aaa'
>>> '123' * 3
'123123123'

对于您的示例,我可能会使用:

>>> "{0[0]}  | {1} Total: {0[1]!s}".format(foo, "[]" * num_occurrences)

【讨论】:

  • 我认为 OP 已经在这样做了,"[]" * num_occurrences
  • @jedwards 问题的后半部分涉及连接,我的答案后半部分也是如此:)
  • 嗯..我觉得原来不存在.. :-P 好吧,很公平。
猜你喜欢
  • 2021-02-09
  • 2011-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多