我的问题是我有一个包含类的文件,并且在这个类内有一堆代码将被执行
所以每当我导入该文件时它就会执行!无需创建该类的对象! ,这是例子
FILE X
class d:
def __init__(self):
print 'print this will NOT be printed'
print "this will be printed"
file B
import x
输出是this will be printed
,所以我的问题是如何跳过执行它直到创建一个新对象?
在Python中你不能这样做,在Python中每个类都是第一级对象,Python类也是一个对象,即使没有该类的实例,类属性也可以存在。如果您只想抑制 print 语句的输出,您可以在导入时重定向 print 语句的输出,或者创建一个类似于中提供的上下文这第一个答案 https://stackoverflow.com/questions/1809958/hide-stderr-output-in-unit-tests并使用__import__
手动声明。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)