- ASCII编码:127个字符,大小写英文字母、数字和一些符号
- Unicode:把所有语言都统一到一套编码里,最常用的是用两个字节表示一个字符
- UTF-8编码:把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
如果你要传输的文本包含大量英文字符,用UTF-8编码就能节省空间。
这里写代码片
- 在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
- 用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件:
- 浏览网页的时候,服务器会把动态生成的Unicode内容转换为UTF-8再传输到浏览器:
字符串
- ord()函数获取字符的整数表示
print(ord('A'))
- chr()函数把编码转换为对应的字符
print(chr(25991))
- 3种引号没有区别
- 如果你想表示一段带有英文单引号或者双引号的文字,那么表示这个字符串的引号就要与内容区别开。
#内容带有单引号,就用双引号表示
"It's good"
‘You are a "BAD" man’
- python中还有一种表示字符串的方法:三个引号(”’)或者(”“”)
在三个引号中,你可以方便地使用单引号和双引号,并且可以直接换行
'''
"What's your name?" I asked.
"I'm Han Meimei."
'''
- 字符串和整数不能相加
str1 = 'good'
str2 = 'bye'
print (str1 + ' and ' + str2)
print ('My age is ' + str(18))
a是变量,而’abc’才是字符串对象
a = 'abc'
b = a.replace('a', 'A')