-
Python自然字符串末尾的反斜杠10
我发现自然字符串末尾似乎不能是反斜杠···
比如:path = r'C:\Windows\'
Python 2.6报错:
SyntaxError: EOL while scanning string literal
IronPython 2.6.2也报错:
File "<stdin>", line 1
path = r'C:\Windows\'
^
SyntaxError: EOL while scanning single-quoted string
不是已经标记了自然字符串了么?反斜杠应该不会转义啊!
我尝试过以下两种写法:path = r'C:\Windows\\'
path = r'C:\Windows\''
可以运行,但print得到的结果都不对,分别是 C:\Windows\\ 和 C:\Windows\'
请问用自然字符串如何表示末尾带反斜杠的字符串的?2011年5月03日 18:49
5个答案 按时间排序 按投票排序
-
字符串的末尾,即使是原始(raw)字符串末尾也不能带奇数个反斜杠,因为这会引起后续引号的转义:比如r'C:\Windows\'这个字符串常量,后一个反斜杠会告诉解析器后面的单引号不是字符串的结尾,字符串由两个引号包围,少了一个引号结束字符串,所以出现"SyntaxError: EOL while scanning single-quoted string "这个错误;这说明原始字符串也不是100%的"raw",它影响字符串的开头和结尾,下面举几个例子:
r'C:\Windows'new'不是有效的字符串,前部分r'C:\Windows'已经是合法的字符串了,后面加上new'解析失败;
r'C:\Windows'\new'也会出错,错误原因同上,合法字符串r'C:\Windows'加上\new'让解析器解析失败;
r'C:\Windows\'new'不会出错,很多人理解的原始字符串会保留字符本来的意义,所以会认为字符串中r'C:\Windows\'已经是一个合法的字符串了,后面还跟着new'使得字符串不合法,其实这个字符串中r'C:\Windows\'不合法,应为后面的反斜杠告诉解析器"我后面的引号的意义已经被我转义了,在这里不是字符串的结尾,你可以继续进行解析"。
完成你的工作需求的三种方法:<1>r'C:\Windows\\'[:-1] <2>r'C:\Windows'+'\\' <3>'C:\\Windows\\'
希望对你有所帮助2011年5月09日 09:50
-
字符串的末尾,即使是原始(raw)字符串末尾也不能带奇数个反斜杠,因为这会引起后续引号的转义:比如r'C:\Windows\'这个字符串常量,后一个反斜杠会告诉解析器后面的单引号不是字符串的结尾,字符串由两个引号包围,少了一个引号结束字符串,所以出现"SyntaxError: EOL while scanning single-quoted string "这个错误;这说明原始字符串也不是100%的"raw",它影响字符串的开头和结尾,下面举几个例子:
r'C:\Windows'new'不是有效的字符串,前部分r'C:\Windows'已经是合法的字符串了,后面加上new'解析失败;
r'C:\Windows'\new'也会出错,错误原因同上,合法字符串r'C:\Windows'加上\new'让解析器解析失败;
r'C:\Windows\'new'不会出错,很多人理解的原始字符串会保留字符本来的意义,所以会认为字符串中r'C:\Windows\'已经是一个合法的字符串了,后面还跟着new'使得字符串不合法,其实这个字符串中r'C:\Windows\'不合法,应为后面的反斜杠告诉解析器"我后面的引号的意义已经被我转义了,在这里不是字符串的结尾,你可以继续进行解析"。
希望对你有所帮助2011年5月09日 09:45
-
这位兄台 我仔细研究了你说的问题
觉得你可能想输出一个这样的字符串c:\windows\纯粹的路径,但是单纯的一个\字符在Python中没法表示,它在输出的时候会默认将其转义为c:\windows\\
所以你看到的path='c:\\' 打印出的c:\\实际上就是你要的东西
希望我的回答对你有帮助2011年5月04日 08:48
相关推荐
这个工程简单写了如何使用replace替换字符串的反斜杠,有需要的可以下载
主要介绍了PHP去掉json字符串中的反斜杠及去掉双引号前的反斜杠的相关资料,需要的朋友可以参考下
给python的新学者参考使用,3.6,win64版本制作
在Python普通字符串中 在Python中,我们用’\’来转义某些普通字符,使其成为特殊字符,比如 In [1]: print('abc\ndef') # '\n'具有换行的作用 abc defg In [2]: print('abc\tdef') # '\t'具有制位符的作用 abc ...
在学习Python正则式的过程中,有一个问题一直...反斜杠,在Python中比较特殊,就是它可以用来构成一些特殊字符,比如“\n”表示换行,“\t”表示制表符。下面是使用“\n”的一行代码: >>>print ('Hello\World\nPython
如下,可以使用C#的Replace()方法来替换,但有一点需要注意的是backslash(反斜杠)...以上这篇C#去除字符串中的反斜杠实例(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。
(特殊字符:即那些,反斜杠加上对应字母,表示对应的特殊含义的,比如最常见的”\n”表示换行,”\t”表示Tab等。 ) 应用: 常用于正则表达式,对应着re模块。 3、字符串前加 b 例: response = b’Hello World!’ ...
python正则表达式 匹配反斜杠 正则 需要把原始字符串不被转义的条件下传递给正则模块,正则再去转义。 r表示r后面的字符串为原始字符串,防止计算机将 \ 理解为转义字符。 r'^\\$' 首先按照原始字符串给到compile...
平时打代码,加载路径的时候,总是反斜杠,然而路径名需要正斜杠,所以自己写了一个简单的bat,方便转换 效果预览:https://blog.csdn.net/a2583211/article/details/95047176
(特殊字符:即那些,反斜杠加上对应字母,表示对应的特殊含义的,比如最常见的”\n”表示换行,”\t”表示Tab等。 ) 应用: 常用于正则表达式,对应着re模块。 3、字符串前加 b 例: response = b' Hello World! ' ...
parseargs-go - 一个字符串参数解析器,理解引号和反斜杠
在本篇文章里小编给大家整理的是关于Python字符串和正则表达式中的反斜杠('')问题以及相关知识点,有需要的朋友们可以学习下。
Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串 print(‘shi\jiazhuang') print(r‘shi\jiazhuang') shi jiazhuang shi\jiazhuang String(字符串) ...
Python 字符串Python转义字符(在行尾时) 续行符\ 反斜杠符号\' 单引号\" 双引号\a 响铃\e 转义\000 空\n 换行\v 纵向制表符\t
python本身使用 \ 来转义一些特殊字符,比如在字符串中加入引号的时候 s = 'i\'m superman' print(s) # i'm superman 为了防止和字符串本身的引号冲突,使用 \ 来转义,一般情况下这个也不会引起什么问题,但是当你...
字符串(sting)是 Python 中最常用的数据类型。我们可以使用引号(‘或”)来创建字符。 特性: •python中单引号和双引号使用完全相同。 •使用三引号(”’或”””)可以指定一个多行字符串。 •转义符 ‘\’ •反...
在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。如下表: Python字符串运算符 下表实例变量a值为字符串”Hello”,b变量值为”Python”: Python字符串格式化 Python 支持格式化字符串的输出 。尽管...
反斜杠的应用.txt反斜杠的应用.txt反斜杠的应用.txt