1,python中字符串可用单引号和双引号表示,如:
"hello"
'hello'
两者本身没区别。
但是当字符串中出现单引号或者双引号时再单纯这样表示就不行了,如
>>> 'Let's go!' SyntaxError: invalid syntax >>> ""I love you!",Lucy said" SyntaxError: invalid syntax
会报错。
解决方法:
(1).使用反斜杠\ 转义字符
(2).当字符串需要出现单引号时用双引号“”表示字符串,当字符串需要出现双引号时,用单引号表示字符串.示例如下:
>> "Let's go!" "Let's go!" >>> 'Let\'s go!' "Let's go!" >>> "Let's go!" "Let's go!" >>> "\"I love you!\",Lucy said" '"I love you!",Lucy said' >>> '"I love you!",Lucy said' '"I love you!",Lucy said'
2.原始字符串
反斜杠可以对自己进行转义,但是有时字符串中出现的反斜杠较多,可以用 原始字符串,即在字符串前加字母'r'
>>> str=r'C:\Windows\donglei\study\python' >>> str 'C:\\Windows\\donglei\\study\\python' >>> print(str) C:\Windows\donglei\study\python
可以看出原始字符串自动为反斜杠转义,但是字符串的末尾有反斜杠‘'\'则不行,如C:\Windows\donglei\study\python\
str=r'C:\Windows\donglei\study\python\' SyntaxError: EOL while scanning string literal
非要在末尾加反斜杠有三种方法
<1>r'C:\Windows\donglei\study\python\\'[:-1] <2>r'C:\Windows\donglei\study\python'+'\\' <3>'C:\\Windows\\donglei\\study\\python\\'
3.长字符串
如果需要得到跨越多行的字符串,则需要用到长字符串(三重引号来表示字符串)
str="""I am donglei who are you? I am Lucy """ >>> print(str) I am donglei who are you? I am Lucy >>> str 'I am donglei\nwho are you?\nI am Lucy\n'