Python问题简单问题

print(0 or 3)的值为3为什么不是True?
bin()
oct()
hex()分别是什么单词的缩写

逻辑运算符or会返回第一个非零的值,如果没有非零值,则返回最后一个值。print(0 or 3)将打印出3。print(1 or 2)打印出1
二进制binary
八进制octal
十六进制hexadecimal

bin是二进制
oct是八进制
hex是十六进制
0 or 3默认是按位运算,而不是逻辑运算,可以写print((0 or 3) == true)

0 or 3 会把 0 和 3 都转化成布尔值,而只有 1 会转化成 True,其他都是 False,所以相当于 False or False。
binary 二进制
octal 八进制
hexadecimal 十六进制