This question already has answers here:
Python cannot handle numbers string starting with 0. Why?
                                
                                    (2个答案)
                                
                        
                                3年前关闭。
            
                    
将数字转换为序列时,不能在数字开头使用零的原因是什么?

代码示例

map(int,str(08978789787))


给出Syntax error

我想将前导数字为零的数字转换为序列。
如何将这样的数字转换为序列?

最佳答案

发生这种情况是因为前导零表示您正在写一个八进制数字,而八进制数字中不能包含9或8。看到:

>>> a = 0123
>>> a
83
>>> a = 010
>>> a
8


您可以这样做:

>>> map(int, '08978789787')
[0, 8, 9, 7, 8, 7, 8, 9, 7, 8, 7]

10-08 08:41
查看更多