python namespace:__ main __.类不是package.Class的实例
考虑你有两个如下定义的python文件.假设一个是通用包(class2),另一个包含特定的覆盖并用作可执行文件(class1). class1.py:
class2.py:
会发生的事情是第一次检查没问题,第二次检查失败.原因是t是__main __.测试而s是class1.Test和v.check()检查__main __.测试,但是在一天结束时它是同一个类,对吧? 有没有办法写v.check(),以便它也接受class1.Test对象,或任何其他方式来解决这个问题? 最佳答案
如果您打算从其他地方导入class1.py,请将顶级代码(如果__name__ ==’__ main__’:…)移动到一个单独的文件中.这样主文件和class2都可以使用相同的class1.Test类.
几乎做任何事都会打开一堆蠕虫.虽然你可以通过将isinstance切换到type(myObject).__ name__ == …来解决当前问题,但事实仍然是你的Python进程包含两个Test类,其中只有一个.其他无法区分的类彼此无关,并且彼此失败的子类测试.这实际上保证了难以诊断的错误. 编辑
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Django – 管理员 – 带’*’的必填字段
- python – 方法返回时,Google App Engine deferred.defer()
- python遍历 truple list dictionary的几种方法总结
- python通过openpyxl生成Excel文件
- Python iterators and generators:迭代器和生成器
- Python中如何优雅的合并两个字典(dict)方法示例
- python – 为什么我的元类实现因TypeError无法创建NoneType
- Python3网络爬虫实战-5、Web库的安装:Flask、Tornado
- 【Scrapy框架基于scrapy-redis实现分布式爬虫】 -- 2019-08
- Python中的Euler Project#3