Python中文
首页
教程
问答
标签
搜索
登录
注册
如何避免以“0”开头的python数字字面值被视为八进制?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在尝试编写一个小的python2.xapi来支持获取 <code>job</code>由<code>jobNumber</code>提供,其中<code>jobNumber</code>是一个整数。 有时用户提供一个<code>jobNumber</code>作为一个整数文本 以0开头,例如<code>037537</code>。(这是因为他们 受到R的宠爱,一种理智地认为<code>037537==37537</code>)的语言 但是,Python考虑以“0”开头的整数文本 是八进制,因此<code>037537!=37537</code>,而不是{<cd8>}。这个 我觉得这是对最小原则的公然侮辱 令人惊讶,谢天谢地,这似乎在Python中得到了修复 3---见<a href="http://www.python.org/dev/peps/pep-3127">PEP 3127</a>。在</p> <p>但我现在只能使用Python2.7。所以我的用户会这样做:</p> <pre><code>>>> fetchJob(037537) </code></pre> <p>默默地找错了工作(16223),或者这样:</p> ^{pr2}$ <p>其中Python拒绝八进制不兼容的数字。在</p> <p>似乎没有任何通过<code>__future__</code>提供给 请允许我获得Py3K行为——它必须是内置的 因为它需要对lexer进行更改 至少。在</p> <p>有人知道我如何保护我的用户不被 在这种情况下是错误的工作?目前我能想到的最好的 的方法是更改API,使其使用字符串而不是int</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>也许您可以将输入作为一个字符串,去掉前导的零,然后再转换回int?在</p> <pre><code>test = "001234505" test = int(test.lstrip("0")) # 1234505 </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
plt.savefig不会覆盖现有文件
3 回答
plt.savefig不保存图像
4 回答
plt.savefig在jupyter笔记本中不起作用
7 回答
plt.savefig在从另一个fi调用时停止工作
10 回答
plt.savefig在调用plt.show之前保存空数字
7 回答
plt.save不创建png文件
6 回答
plt.scatter overlay分类数据帧列
1 回答
Plt.Scatter:如何添加title、xlabel和ylab
6 回答
plt.scatter()绘图与Matplotlib中的plt.plot()绘图类似
9 回答
plt.scatter错误'NoneType'对象在成功运行后没有属性'sqrt'
7 回答
plt.set_title()中的标题字符串有误
8 回答
plt.show()
6 回答
plt.show()不在Jupyter笔记本上渲染任何内容
8 回答
plt.show()不打印plt.plot only plt.scatter
8 回答
plt.show()不显示三维散射图像
9 回答
plt.show()不显示任何内容
2 回答
plt.show()不显示数据,而是保留它供下一个图表使用(spyder)
1 回答
plt.show()使终端挂起
3 回答
plt.show()无法使用此代码
1 回答
plt.show()没有打开新的图形风
8 回答