通过将元素放在括号内创建字符串

2024-06-16 09:55:48 发布

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

这些方法通过分别定义字符串的各个元素来创建字符串:

str1 = ("a" "b")
# str1 = 'ab'

str2 = ("d"+str1)
# str2 = 'dab'

str3 = ("d" "e" "f")
# str3 = 'def'

但这次失败了。为什么?在

^{pr2}$

有什么办法?在


Tags: 方法字符串元素ab定义def办法dab
2条回答

你在混合两种不同的东西。("a" "b")看起来像是两个字符串,但实际上只有一个;由空格分隔的字符串文本会自动连接到单个字符串。它与使用("ab")完全相同。在

另一方面,您可以添加两个不同的字符串来生成新的单个字符串。这就是("d"+str1)所发生的事情。在

第一个例子中的技巧只适用于字符串文本,而不适用于变量或更复杂的表达式。所以("d"+str1 "e")不起作用。您需要("d"+str1+"e"),这是两个附加项。在

注:括号是可选的,它们只是将不需要任何额外分组的操作组合在一起。在

相邻的两个字符串文本将自动连接;这只适用于两个文本,而不适用于任意字符串表达式

>>> 'str' 'ing'                   #  <-  This is ok
'string'
>>> 'str'.strip() + 'ing'   #  <-  This is ok
'string'
>>> 'str'.strip() 'ing'     #  <-  This is invalid
  File "<stdin>", line 1, in ?
    'str'.strip() 'ing'
                      ^
SyntaxError: invalid syntax

The Python Tutorial

更清晰: enter image description here

相关问题 更多 >