虽然在python中进行类型转换我遇到了错误.
int(01)
int(02)
int(03)
int(04)
int(05)
int(06)
int(07)
Run Code Online (Sandbox Code Playgroud)
最重要的是工作正常.
但是当我为轰鸣声做同样的事情时:
int(08)
Run Code Online (Sandbox Code Playgroud)
和
int(09)
Run Code Online (Sandbox Code Playgroud)
我收到了错误,即
SyntaxError: invalid token
Run Code Online (Sandbox Code Playgroud)
我知道,这种类型转换对于将int转换为int是不正确的.
但我只是想知道,当它适用于01至07时,为什么它不适用于08和09?
the*_*eye 11
以0开头的数字被视为八进制数据.八进制数不能超过7.
要解决此问题,您可以将数据转换为字符串并像这样显式传递基数
print int("09", 10)
Run Code Online (Sandbox Code Playgroud)
产量
9
Run Code Online (Sandbox Code Playgroud)