我实现了一个将整数转换为字符串表示形式的函数intToStr()
(下面的代码)。
为了进行测试,我传入了一些值并观察到了意外的输出:
print intToStr( 1223) # prints 1223 as expected
print intToStr(01223) # prints 659, surprisingly
现在,我尝试调试它,我传入的整数确实是659
.
为什么会发生这种情况,我怎样才能让 python 忽略整数文字的前导零?
这是我的功能的代码:
def intToStr(i):
digits = '0123456789'
if i == 0:
return 0
result = ""
while i > 0:
result = digits[i%10] + result
i /= 10
return result