我在编写的各种脚本上运行2to3工具,以了解将这些端口移植到Python 3时需要进行哪些更改(尽管最后我会手工完成)。
这样做的时候,我遇到了一个奇怪的将2to3更改为我的脚本之一的情况:
-def open_pipe(pipe, perms=0644):
+def open_pipe(pipe, perms=0o644):
嗯...为什么2to3在我的“ perms”整数中间添加一个“ o”?
那是从此处找到的原始资源的第41行:https : //github.com/ksoviero/Public/blob/master/tempus.py
尝试0644
在您的python2 shell中输入。它会给您一个不同的数字octal
。在python3中,0o
表示octal
数字。
python2
:
>>> 0644
420
>>>
python3
:
>>> 0644
File "<stdin>", line 1
0644
^
SyntaxError: invalid token
>>> 0o644
420
>>>
八进制字面值的格式不再为0720;请改用0o720。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句