python - Python3.8:十进制整数文字中的前导零是不允许的;对八进制整数使用 0o 前缀
问题描述
在 Python 3.8 中,是否有原因00
或000000
在03
产生错误时有效?
>>> 000
0
03
File "<stdin>", line 1
03
^
SyntaxError: leading zeros in decimal integer literals are not permitted; use an 0o prefix for octal integers
解决方案
是的。Python 的常量派生自 C,其中以 0 开头的整数被解释为八进制。因此,0377
具有十进制值 255。随着时间的推移,Python 已更改为0o
前缀,但 C 仍然允许使用0
前缀。为了避免任何潜在的混淆,0
前缀现在是一个语法错误。
推荐阅读
- android - 无法使用多部分请求从颤振应用程序上传图像
- javascript - 为什么 javascript 表单验证中的 required 属性仅适用于我表单中的一个按钮?
- python - 我不明白这行代码是如何工作的
- python - 你可以在termux中使用pygame吗?
- c# - WPF 中的 C# 更改为更人性化的布尔值
- unity3d - Unity中XR控制器移动的距离
- python - 访问另一个 tkinter 类的输入字段值
- d3.js - D3v6 凸包示例
- python - 在 Windows 10 中连接时 MYCLI 出错
- c++ - 嵌套的 rest api 调用使服务器上的网络出现奇怪的行为