python - 字符串连接的变体?

标签 python string string-concatenation

在字符串文字连接的以下两个变体(之间有或没有加号)中:

  • 首选方式是什么?
  • 有什么区别?
  • 什么时候应该使用其中之一?
  • 是否应该使用它们中的任何一个,如果是,为什么?
  • 是否首选加入

代码:

>>> # variant 1. Plus
>>> 'A'+'B'
'AB'
>>> # variant 2. Just a blank space
>>> 'A' 'B'
'AB'
>>> # They seems to be both equal
>>> 'A'+'B' == 'A' 'B'
True

最佳答案

并置仅适用于字符串文字:

>>> 'A' 'B'
'AB'

如果您使用字符串对象:

>>> a = 'A'
>>> b = 'B'

你需要使用不同的方法:

>>> a b
    a b
      ^
SyntaxError: invalid syntax

>>> a + b
'AB'

+ 比仅仅将文字并排放置要明显一些。

第一种方法的一个用途是将长文本分成几行,保持 源代码中的缩进:

>>> a = 5
>>> if a == 5:
    text = ('This is a long string'
            ' that I can continue on the next line.')
>>> text
'This is a long string that I can continue on the next line.'

''join() 是连接更多字符串的首选方式,例如在列表中:

>>> ''.join(['A', 'B', 'C', 'D'])
'ABCD'

关于python - 字符串连接的变体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34158494/

相关文章:

java - 如何从另一个字符串替换一个字符串?

python - 查找所有出现的子字符串(包括重叠)?

java - 为什么在 Java 中使用 StringBuffer 而不是字符串连接运算符

c# - 从其代码中获取 unicode 字符串 - C#

python - 在 Twisted 透视代理中调用客户端的远程方法

python - 将请求 cookie 导出到 webdriver

java - 对字符串池对象的弱引用

python - PyCharm pip install googlesearch 给出错误

python - 为什么 Python 的 itertools.permutations 包含重复项? (当原始列表有重复时)

sql - 在 PostgreSQL 结果中连接字符串