一.说明 之前默认以为python的open方法用存哪里都没什么区别的,然后昨天直接在"__del__()"中使用今天同事跑程序时反馈程序报错“Python3 NameError: name 'open' is not defined”. 排查之后发现是在"__del__()"中使用open方法所致,处理办法是在别的地方打开文件保存成成员变量而不要在"__del__()"中使用open,原理则尚不太清楚. 二.程序示例 2.1 报错程序 报错代码…
Python class NameError name "xxx" is not defined 这是因为在 class 中调用了带双下划线 "__" 的函数对象,例如: def __fun(): pass class A(): def __init__(self): __fun() #会报错,不要调用外部带 __ 的函数…