为了账号安全,请及时绑定邮箱和手机立即绑定

在python中,以0开头的数字意味着什么?

在python中,以0开头的数字意味着什么?

犯罪嫌疑人X 2019-06-28 15:03:46
在python中,以0开头的数字意味着什么?当我在python中键入前面有0的小整数时,它们会给出奇怪的结果。这是为什么?>>> 0119>>> 010064>>> 02723注意:PythonVersion2.7.3我已经在Python3.0中测试过这个版本,显然这是一个错误。所以它是特定版本的。编辑:它们显然仍然是整数:>>> type(027)`<type 'int'>`
查看完整描述

3 回答

?
森林海

TA贡献2011条经验 获得超2个赞

在Python 2中(以及更多的编程语言),它们表示八进制数.

在Python 3中,011不再起作用了,你会用0o11相反。

作为对编辑的响应它们是正则整数。它们只是指定了不同的方式;它们由Python自动转换为内部整数表示(实际上是base-2,所以两者都是)。9011内部转换为0b1001).


查看完整回答
反对 回复 2019-06-28
?
largeQ

TA贡献2039条经验 获得超7个赞

Python版本2和3都理解用前导“0o”和“0O”(大写o)编写的八进制,所以在使用Python2.x时也要习惯使用if。

只对字符串中的数字使用前导零。

您可以使用int()从任何其他基本系统转换整数。

>>> int(0o20)

16

如果希望以前导零显示输出,请根据以下答案定义输出:带前导零的显示数字

如果您计划使用ZIP代码,最好以各种方式将它们视为字符串。


查看完整回答
反对 回复 2019-06-28
  • 3 回答
  • 0 关注
  • 3640 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信