“\ 00”在Python中的含义是什么?要了解更多关于这一点,我尝试以下操作:什么是Python中的“ 00”?
- 当我分配
d="\00"
,并呼吁print d
,没有显示在屏幕上。 - 我也尝试将
d
分配给一个字符串,并在结尾处加上一个空格,然后调用d.replace("\00", "")
,但没有任何结果是明显的。
d.replace("\00","")
是做什么用的?它只会寻找这个特定的字符串“\ 00”并将其替换为空字符串?
“\ 00”在Python中的含义是什么?要了解更多关于这一点,我尝试以下操作:什么是Python中的“ 00”?
d="\00"
,并呼吁print d
,没有显示在屏幕上。d
分配给一个字符串,并在结尾处加上一个空格,然后调用d.replace("\00", "")
,但没有任何结果是明显的。d.replace("\00","")
是做什么用的?它只会寻找这个特定的字符串“\ 00”并将其替换为空字符串?
在Python 2中,当数字以前导零开始时,表示它是八进制数(基数为8)。在Python 3中,八进制文字以0o
代替。 00
具体为0.
\00
中的前导\
是一种指定字节值的方式,一个介于0-255之间的数字。它通常用于表示不在键盘上的字符,否则不能用字符串表示。一些特殊字符也具有非数字“转义码”,如换行符\n
。
零字节也被称为nul字节或空字节。打印时不显示任何内容 - 它为空。
有关ASCII字符代码,请参见http://www.ascii.cl/。
是的,replace
仍然可以使用它,它只是作为一个显示字符没有意义。
它有时用于其他目的,请参阅http://en.wikipedia.org/wiki/Null_character。
后面跟着一个数字的反斜杠用于表示具有该八进制值的字符。所以你的\00
代表ASCII NUL。
没有“ASCII NULL”这样的东西。这是'NUL'。 'NULL'是Python的'None'的SQL等价物。 –
那么'replace'会做什么?它会仅仅将“\ 00”视为一个纯字符串;被“”取代。 –
是的,它会用您指定的任何字符串替换零字节,就像替换'a'或''(空格)或'\ t'(制表符)一样。 – agf
@agf注意'\ 0'实际上是基数8而不是基数10.它对空值没有任何区别,但是一旦你开始将它用于超过7的任何字符,它将会产生很大的差异。 – Duncan