xxzj01 发表于 2021-8-25 21:47:23

原始字符串理解

依次输入以下代码:

>>> string = r'c:\windows\fishc''\\'

>>> print(string)

c:\windows\fishc\

>>> string = r'\\'

>>> print(string)

\\

我的问题是,同样是输入'\\'   ,为什么第一次打印出来是一个反斜杠,第二次打印出来却是两个反斜杠?

tt000 发表于 2021-8-25 21:53:58

你把fishc后面的双引号去掉看看,应该是有干扰

白two 发表于 2021-8-25 22:33:17

本帖最后由 白two 于 2021-8-25 22:37 编辑

python中有很多字符串连接方式,独有的一种是只要把两个字符串放在一起,中间有空白或者没有空白:两个字符串自动连接为一个字符串

'Jim''Green' = 'JimGreen'
'Jim' 'Green' = 'JimGreen'

>>> str1 = '123''456'
>>> print(str1)
123456

所以你上面那个相当于两个字符串的拼接:
r'c:\windows\fishc' 和 '\\'

上面那个的那个等价于这个:
>>> string = r'c:\windows\fishc'+'\\'
>>> print(string)
c:\windows\fishc\

这样就不难发现,只有第一个字符串是原始字符串,第二个字符串并不在 r 的范围内

Rosy7673 发表于 2021-8-25 22:40:56

白two 发表于 2021-8-25 22:33
python中有很多字符串连接方式,独有的一种是只要把两个字符串放在一起,中间有空白或者没有空白:两个字符 ...

学到了!({:5_104:})
页: [1]
查看完整版本: 原始字符串理解