运算符
# x or y 如果 x 为真,则值为x,否则为y 1 print(4 or 3) # 4 2 print(2 or 3) # 2 3 print(1 or 3) # 1 4 print(0 or 3) # 3 5 print(-1 or 3) # -1 # x and y 如果 x 为真,则a值为y,否则为x 1 print(4 and 3) # 3 2 print(2 and 3) # 3 3 print(1 and 3) # 3 4 print(0 and 3) # 0 5 print(-1 and 3) # 3 # or前面x如果是数字(并且x为真)则x返回数字。前面x是比较,则x返回真假布尔值。 1 print(3 or 3>2) # 3 2 print(3>2 or 3) #True
print(1 or 2) --> 1
print(0 or 3) --> 3
print(1 and 2) --> 2 and与or正好相反
print(1 and 2>3) -->Flase
print(1>2 or 0 and 3<6 or 5) --> 5
0 or 5 < 4 -->False
8 or 3 and 4 or 2 and 0 or 9 and 7 -->True
0 or 2 and 3 and 4 or 6 and 0 or 3 -->False
3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2 -->2
and: 并且, 两端同时为真. 结果才能是真
or: 或者, 有一个是真. 结果就是真
not: 非真既假, 非假既真
顺序: () => not => and => or
x or y:
如果x是零, 输出y
如果x是非零, 输出x
True: 非零
False: 零
理解记忆 or 前面非零取前面 前面为零取后面; and 与or 正好相反
特别注意:
0 or 5 < 4 -->False print(-1 or 3) --> -1
编码部分:
1. ascii. 最早的编码. 至今还在使用. 8位一个字节(字符)
2. GBK. 国标码. 16位2个字节.
3. unicode. 万国码. 32位4个字节
4. UTF-8. 可变长度的unicode.
英文: 8位. 1个字节
欧洲文字:16位. 2个字节
汉字. 24位. 3个字节
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB