pickle模块和shelve模块均可以实现
这里只针对shelve进行记录,QPen类型包含了color类型等,在对象中包含了其他对象,直接使用cursor[obj] = obj会报错,将其分开就不报错,具体原因尚不清楚。
import shelve
from PyQt5.QtGui import QPen
obj = QPen()
cursor = shelve.open(file_path)
cursor['obj'] = {'obj':[obj.width(), obj.color(), obj.style()]}
cursor.close()