一. 基本运算符
'''
// 取整除, 向下取接近商的整数
** 幂函数
'''
print(9//2)
print(3**3)
'''
位运算符
<<
>>
'''
a = 1
print(a<<3)
'''
逻辑运算符
() > not > and > or
'''
print(3>4 or 4<3 and 1==1)
print(1 < 2 and 3 < 4 or 1>2)
print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1)
print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8)
print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)
print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 7)
二. 编码
ASCll
计算机并不普及,最早美国人使用, 位置只有256个,后来, 计算机普及, 到了其他国家就不行了, 不同的国家提出不同的编码环境, 比如中国GBK.
GBK(2)
国标码占⽤用2个字节. 对应ASCII码 GBK直接兼容. 因为计算机底层是⽤用英⽂文写的. 你不不⽀支持英⽂文肯定不不⾏行行. ⽽而英
⽂文已经使⽤用了了ASCII码. 所以GBK要兼容ASCII.
这⾥里里GBK国标码. 前⾯面的ASCII码部分. 由于使⽤用两个字节. 所以对于ASCII码⽽而⾔言. 前9位都是0
字⺟母A:0100 0001
字⺟母A:0000 0000 0100 0001
国标码的弊端: 只能中国⽤用. ⽇日本就垮了了. 所以国标码不满⾜足我们的使⽤用. 这时提出了了⼀一个万国码Unicode.
unicode(4)
一开始设计是每个字符两个字节. 设计完了了. 发现我⼤大中国汉字依然⽆无法进⾏行行编码. 只能进⾏行行扩充. 扩充成32位也就是4个字节. 这回够了了. 但是. 问题来了了. 中国字9万多. ⽽而unicode可以表⽰示40多亿. 根本⽤用不了了. 太浪费了了. 于是乎, 就提出了了新的UTF编码.可变⻓长度编码.
UTF(可变)
UTF-8: 每个字符最少占8位. 每个字符占⽤用的字节数不定.根据⽂文字内容进⾏行行具体编码. 比如. 英⽂文. 就⼀一个字节就够了了. 汉
字占3个字节. 这时即满⾜足了了中⽂文. 也满⾜足了了节约. 也是⽬目前使⽤用频率最⾼高的⼀一种编码
UTF-16: 每个字符最少占16位.
GBK: 每个字符占2个字节, 16位.
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
三. while, in, not in,
word = input("输入语句: ")
index = 1
while "1" in word and "2" not in word and index < 3 :
print("输入不合法")
index+=1
else:
print("over")