shelve使用
import shelve
scores = [1,23,4,5]
class Student:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return self.name
# shelve 写
def write_shelve():
s = Student('tom', 23)
db = shelve.open('student_db')
db['s'] = s
db.close()
# shelve 读
def read_shelve():
db = shelve.open('student_db')
st = db['s']
print(st)
print(st.name)
print(st.age)
db.close()
if __name__ == '__main__':
write_shelve()
字符串编码与解码
ascii: 0到127,128个字符
utf-8: 前128个字符为ascii, 后面是可变编码
chr()方法 和 ord方法
chr(65) # 代码点对应的字符 A
ord('A') # 代码点 65
ord('a') # 97
encode()方法 和 decode()方法
'str'.encode('utf-8') # b'str' 代表字节
'str'.encode('ASCII')
b'str'.decode('utf-8')
'str'.encode() # 默认utf-8
# 其他
bytes('abc', 'ascii')
Bom 字节顺序标记
open('data.txt', 'r', encoding='utf-8').read()
# 忽略标记
open('data.txt', 'r', encoding='utf-8-sig').read()
# 写标记
open('data3.txt', 'w', encoding='utf-8-sig').write('课堂')