那些年我踩过的坑(持续更新)

今天突然想到可以把开发中遇到过的问题记录下来,以防日后再犯:)


Python中新式类和旧式类在多继承的时候,查找要调用的方法(从左到右):

新式类是广度优先的查找算法。

旧式类的查找方法是深度优先的。

type是元类,是创建类对象的类

使用MongoEngine定义个Field为primary_key时,MongoEngine会自动把这个的键变成_id


pyqt中不能在子线程中操作UI。

信号要定义成类成员。



os._exit() 直接退出 Python 解释器,其后的代码都不执 行,一般用于在线程中退出。
sys.exit() 引发一个 SystemExit 异常,没有捕获这个异常,会直接退出;捕获这个异常可以做一些额外的清理工作,一般用于主线程中退出。


JSON 字符串必须使用双引号括起


xlrd打开表格遇到如下编码问题时:return codecs.utf_16_le_decode(input, errors, True)
UnicodeDecodeError: 'utf16' codec can't decode bytes in position 6-7: unexpected end of data
可以在打开前加一句

xlrd.biffh.unpack_unicode.func_globals["unicode"] = lambda s, e: unicode(s, e, errors="ignore")
尝试解决


你可能感兴趣的:(Python,编程相关)