转义字符 - python2.7转义问题,x='C:\py\code'
天蓬老师
天蓬老师 2017-04-17 15:23:09
0
2
344

我想问的是输出x为什么是双斜杠,打印又是单斜杠。
这是python学习手册上的一个例子。解释是python没有一个合法的转义编码识别出在'\'后的字符,它就会简单地在最终的字符串中保留反斜线。为什么保留反斜线多保留一条了呢,print又是怎么能正常显示呢

菜鸟一个,也没搜索到答案。还劳烦不介意幼稚的问题帮我解答,谢谢您了。

还有这个也不明白:

输出path为什么会是双斜杠

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复 (2)
巴扎黑
phpstr()出来的值是给人看的,repr()出来的值是给python看的 在提示符后直接输入一个变量名`path`,结果跟`print repr(path)`是一样的 >>> path 'c:\\new\\test' >>> print repr(path) 'c:\\new\\test' >>> print path c:\new\test >>> print str(path) c:\new\test
    左手右手慢动作

    "\" 是Python 中的转义符号,用于打印一些特殊符号。
    例如,"\'" 表示单引号。

    >>> s = 'hello\'world\'' >>> s "hello'world'"

    当反斜杠"\" 和后面的字符无法组成有效的转义字符时,Python 就认为反斜杠本身需要作为字符保留在字符串中。
    在你给的例子中,\c\p并不是合法的转义符号,所以保留反斜杠"\"。而反斜杠本身通过转义符号\\表示,所以Python 在字符串中成了双反斜杠。这样在打印时,可以输出正常的内容。

    >>> s = 'C:\py\code' >>> s 'C:\\py\\code' >>> print s C:\py\code
      最新下载
      更多>
      网站特效
      网站源码
      网站素材
      前端模板
      关于我们 免责声明 Sitemap
      PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!