编码:一种表现格式,就跟各种语言的一种表达方式.
1.ASCII码 是个由一个字节(8个二进制位)组成,支持字母、数字、符合,不支持中文;
2.GBK码(国标码) 由2个字节(16个二进制位)组成,支持中文、字母、符合、数字;
3.unicode、UTF-8、UTF-16(万国码) 世界国际标准字符集,集合中文与各种文字、字符的编码.
解码:就是把编码读出来,把一种格式转成自己可以看的明白的一种表达格式.
编码储存如:
中文:
str='华盛顿是美国的首都'
print(str.encode('UTF-8'))
输出:
b'\xe5\x8d\x8e\xe7\x9b\x9b\xe9\xa1\xbf\xe6\x98\xaf\xe7\xbe\x8e\xe5\x9b\xbd\xe7\x9a\x84\xe9\
xa6\x96\xe9\x83\xbd'
Process finished with exit code 0
英文:
str='Washington is the capital of the United States'
print(str.encode('UTF-8'))
输出:
b'Washington is the capital of the United States'
Process finished with exit code 0
数字(用字符输入):
str='1,2,3,4,5,6,7,8,9'
print(str.encode('UTF-8'))
输出:
b'1,2,3,4,5,6,7,8,9'
Process finished with exit code 0
解码:
s=b'\xe5\x8d\x8e\xe7\x9b\x9b\xe9\xa1\xbf\xe6\x98\xaf\xe7\xbe\x8e\xe5\x9b\xbd\xe7\x9a\x84\xe9\xa6\x96\xe9\x83\xbd'
print(s.decode('utf-8'))
输出:
华盛顿是美国的首都
s=b'Washington is the capital of the United States'
print(s.decode('utf-8'))
输出:
Washington is the capital of the United States
s=b'1,2,3,4,5,6,7,8,9'
print(s.decode('utf-8'))
输出:
1,2,3,4,5,6,7,8,9'
is 与 '='都是比较,is是比较相互之间的内存地址码,'='是比较相互直接的值.
1.查看内存地址:
s='华夏'
print(id(s))
输出(内存地址):
1325401036560
Process finished with exit code 0
s='China'
print(id(s))
输出(内存地址):
2563011936048
Process finished with exit code 0
2.比较
a='China'
b='China'
print(a is b)
输出:
True #内存地址相同,a跟b是同一个字符
Process finished with exit code 0
a='中国'
b='中国'
print(a is b)
输出:
True #内存地址相同,a跟b是同一个字符
Process finished with exit code 0
a=123
b=123
print(a is b)
输出:
True #内存地址相同,a跟b是同一个字符
Process finished with exit code 0
a=(1,2,3)
b=(1,2,3)
print(a is b)
输出:
True #内存地址相同,a跟b是同一个字符
Process finished with exit code 0
a=[1,2,3]
b=[1,2,3]
print(a is b)
输出:
False #内存地址相同,a跟b是不是同一个字符
Process finished with exit code 0
a={1,2,3}
b={1,2,3}
print(a is b)
输出:
False #内存地址相同,a跟b是不是同一个字符
Process finished with exit code 0
a = {'k1':'1234'}
b = {'k1':'1234'}
print(a is b)
输出:
False #内存地址相同,a跟b是不是同一个字符
Process finished with exit code 0
#字符串 数字 元组中相互相同的元素,就是同一个字符,内存地址都是一样;集合 列表 字典中相互相同元素
但内存地址不一定相同.