在PHP中,用"双引号"括起来的字符串将被解析为要替换的变量,而用"单引号"括起来的字符串则不会.在Python中,这也适用吗?
无:
2.4.1.字符串和字节文字
...用简单的英语:两种类型的文字都可以用匹配的单引号(
'
)或双引号("
)括起来.它们也可以包含在三个单引号或双引号的匹配组中(这些通常称为三引号字符串).反斜杠(\
)字符用于转义具有特殊含义的字符,例如换行符,反斜杠本身或引号字符......
Python是少数(?)语言中的一种,其中'和'具有相同的功能.我的选择通常取决于内部.如果我要引用其中包含单引号的字符串,我将使用双引号反之亦然,减少必须逃避字符串中的字符.
例子:
"this doesn't require escaping the single quote" 'she said "quoting is easy in python"'
这在python文档的"String Literals"页面上有记录:
http://docs.python.org/2/reference/lexical_analysis.html#string-literals(2.x)
http://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals(3.x)
在某些其他语言中,如果使用单引号,则不会解释元字符.以Ruby为例:
irb(main):001:0> puts "string1\nstring2" string1 string2 => nil irb(main):002:0> puts 'string1\nstring2' string1\nstring2 => nil
在Python中,如果你想要字面意思地使用字符串,你可以使用原始字符串(前面带有"r"字符的字符串):
>>> print 'string1\nstring2' string1 string2 >>> print r'string1\nstring2' string1\nstring2