字符串格式化
百分号格式化
需要指定数据类型,且需要一一对应。
s = "vae"
d = 32
print("我叫%s,年龄%d" % (s, d)) # 我叫 vae,年龄 32
Format 方法
Format 是 Python 特有的,不需要指定数据类型,不需要一一对应。
s = "vae"
d = 32
print("我叫{},年龄{}".format(s, d)) # 我叫 vae,年龄 32
print("我叫{0},年龄{1},真名{0}".format(s, d)) # 我叫 vae,年龄 32,真名 vae
L = ["许嵩", 32, "vae"]
print("我叫{0},年龄{1},真名{0}".format(*L)) # 我叫许嵩,年龄 32,真名许嵩
字符串编码(encode、decode)
Python 3 里面字符编码实际类型: a. 内存中字符运行的时候编码是 unicode,用空间换时间 b. 硬盘存储中或者网络传输过程中用 utf-8,追求空间
1 字节==8 位 utf-8:英文:8;中文:24; unicode:所有的都是 16 位
encode 编码:unicode 转换为指定编码 decode 解码:将原编码转换成 unicode
s = "中" # 程序执行时,"中"会以 unicode 形式存在在内存中
# encode 编码
s1 = s.encode("utf-8") # b'\xe4\xb8\xad'
print(s1)
s2 = s.encode("gbk") # b'\xd6\xd0'
print(s2)
# decode 解码
print(s1.decode("utf-8")) # 中
print(s2.decode())
(s2.decode().encode())

