Python __main__和launch()方法之间的区别
我仍处于学习阶段,我有这个问题 因此,为了执行一个类,我们使用Python __main__和launch()方法之间的区别,python,Python,我仍处于学习阶段,我有这个问题 因此,为了执行一个类,我们使用if\uuuuuu name\uuuuu='\uuuuu main\uuuu':并如下调用该类 class Example(): def test(self): print "Hello There" if __name__ == '__main__': Example() 但是,我看到一些类使用def-launch():而不是,如果uuu-name\uuuu=='\uuu-main\uuu':,
if\uuuuuu name\uuuuu='\uuuuu main\uuuu':
并如下调用该类
class Example():
def test(self):
print "Hello There"
if __name__ == '__main__':
Example()
但是,我看到一些类使用def-launch():
而不是,如果uuu-name\uuuu=='\uuu-main\uuu':
,那么这里的问题是:它们是相似的,所以我可以两种方式都使用还是def-launch():
有一个特殊的建议
多谢各位 Python在顶层运行任何东西,这就是为什么我们使用类和函数来分隔作业(还有其他原因) 举个例子 脚本
a.py
def main():
pass
main()
解释器将定义一个名为main()
的函数,但当它到达顶层的main()
调用时(最左边对齐)
它将执行主功能
现在,对于您的launch()
vs
当有人想要导入一个程序或类,但当解释器运行到该程序或类中时,不想让它运行时,可以使用这种方法
导入将在该点和时间调用main()
然而,假设b.py
在结构上相似,但它没有main()
而是\uuuu name\uuuu=\uuuu main\uuuu
,b.py
除非直接调用,否则不会运行
我之所以提出这个问题,是因为@harshil9968指出,Python没有“启动”方法。可能发生的情况是,他们定义了一个launch()
方法,而不是main()
然后把它放在一个班级里
class A():
def launch(self):
#actions
if __name__ == '__main__':
A()
调用
A()
调用A
类中的launch()
方法。python中没有launch,他必须像您声明的def test()
一样声明函数名。没有别的。我假设在您的教程中,他们创建了一个名为launch
的函数,并从函数体内部调用类来执行它?或者launch
只是类中的另一个函数?您介意给我们举一个launch
方法的示例吗?@Harrison谢谢。你说他们创建了一个名为launch的函数,并从函数体内部调用了类来执行它?
你能提供一个例子让我比较一下吗?谢谢,非常感谢。解释得很好:)调用A
不会调用launch()
。为什么要这样做?
__name__ = __main__
class A():
def launch(self):
#actions
if __name__ == '__main__':
A()