① python中转义字符是什么
在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。
如下表:
原始字符串
有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和R来定义原始字符串。
② Python什么情况下会输出转义符
可以认为一个是用的是str方法,目的是向终端显示;一个用的repr方法,目的是把数据结构和类型表达出来
这是 Python 2 特别讨厌的一点,以至于我实在忍受不了写了个repl_py27来绕过该问题。不过最终还是迁移到 Python 3 啦 =w=
Python 2 的世界是个 ASCII 的世界,unicode 是后来加的,所以使用repr显示的时候是把所有非 ASCII 的字符转义显示的。你要直接把字符串写出来的话,Python 2 就不会进行任何转义了,于是在支持的终端上,中文就能正常显示了。
print 遇到非字符串时,会调用str()函数将对象转成字符串再输出:
>>>classT(object):
...def__repr__(self):
...return'<repr>'
...def__str__(self):
...return'<str>'
...
>>>printT()
<str>
而很多对象的__str__方法是没有定义的,于是str()函数改调用它的__repr__方法。
又:Python 2 的字符串和 unicode 的str()输出都是经过转义的。这也是我讨厌 Python 2 的另一个重要原因:
>>>u'中文'
u'u4e26587'
>>>'中文'
'xe4xb8xadxe6x96x87'
③ python 转义符号\u
\u才是转义符,而你例中的\\u本身已经取消了转义。"\\u1234"代表“\、u、1、2、3、4”共6个字符。
④ python中的自然转义符
是这样子的,像\t,如果要是没有r'\t',那么,\t前面的\也要转义,就要写成'\\t',这样如果每个\都要转义,那你会晕掉的。所以,加了r之后你就不需要考虑再把那些\转义成\\了。
⑤ Python转义符
\o12代表换行
\141为何表示a
八进制12为十进制10,换行的ASCII码为10.
八进制141为十进制97,换行的ASCII码为97.
根据字符的ASCII码进行输出的!
⑥ python中对%转义为何是%%,%和\转义有什么区别吗
区别是因为python解释器会把7交给第一个%号后面的d,而两个%%号会被解析成一个%号。
'growth rate: %d %%' % 7
这行代码你可以运行一下,转义第二个%号应该是。
⑦ Python 如何解析文件中的转义字符
我都没用过listdit。
但是,去找了下其使用说明:
所以:
你可以试试,传入路径是unicode,比如:
然后,输出的list中的文件名列表,就都是unicode了,就可以正常显示出你要的,包括特殊字符的文件名了。
然后你就可以正常的打开了。
当然,后续处理文件时,如果是中文等非ASCII的话,也是要了解涉及到字符编码的。这时候,最好用codecs模块。
⑧ python 什么字符需要转义
不是什么字符需要转义,而是字符前面加斜杠后意思变了,所以叫转义字符
比如\n 表示换行,不是字母n
⑨ python 字符串 转义字符 \0 \x
关于转义格式
\x**
用2个16进制数表示一个字符
\***
用3个8进制数表示一个字符
其实上面第一个的
\0
=
NULL
用的就是
8进制的转义格式只不过是\000的缩写,高位的0可以省去就像表示\42不用写成\042
为什么说他是二进制字符?
二进制字符是一个概念,意思是里面完全由字节数据组成,而不是平常的字符串,
打印出来你是看不见的,或是乱码;