关于int的问题
x = 312int(0x10)=16
Int(0x)会报错
int(x10)也会报错
只有int(0x10)=16才是对的
这是为啥 0x表示16进制,这就是规定 本帖最后由 jackz007 于 2022-9-10 19:42 编辑
你写的代码对 Python 而言,只是文本,也就是文字,文字只是载体,作用是传递信息。所以,要想让 Python 读懂你代码里的每一个字符,关键是要遵守语言规定,只有这样,才能做到你和 Python 互懂彼此。
0x10 是 Python 规范的十六进制数表达,而 0x 和 x10 显然都不是。当然,你还可以用二进制数 0b10000、八进制数 0o20 来表达十进制数 16,尽管它们在形式上和 0x10、16 完全不同,但是,一点也不妨碍 Python 秒懂咱的意思。 你要理解0x前缀是什么意思,10没有前缀就表示10是十进制数字,0x10有0x前缀就表示10这个数字是十六进制,0o10有0o前缀就代表10是八进制。你只写0x或者写x10根本不符合Python语法,肯定会报错。
简而言之,Python 是大小写敏感的语言,int 和 Int 完全是不同的
0x 是 十六进制的前缀,所以你 x10 会报错,因为没有 x10 这种写法
另外还有 0o 八进制前缀、0b 二进制前缀,默认进制为十进制,其他的前缀用于区分是什么进制
页:
[1]