我目前正在使用Python,并且对功能在__main__
中列出的事实感到困惑。我一直在寻找多个python脚本来试图找到一个共同的主题,以确定哪些功能在__main__
中有一席之地,但无济于事。在这里我有我自己的代码的示例。 firstfunction
和 anotherfunction
是我的代码中唯一的两个函数。有关__main__在Python中的概念性查询
def main(argv):
firstinput=""
secondinput=""
if len(argv) < 3 or len(argv) > 3:
print """"Please set to:
metisfinal.main(metisfinal.py, firstinput, secondinput)""""
return
else:
firstinput = argv[1]
secondinput = argv[2]
firstfunction(firstinput, dictionary)
anotherfunction(list, secondinput)
if __name__ == "__main__":
main(sys.argv)
(我认为)我知道的参数和__main__
通话是正确的,但firstfunction
和anotherfunction
总是返回错误(因为他们的观点没有全局定义)。我确信这是由于对__main__
的错误理解而产生的,因为我查看过的所有其他示例基本上都以相同的方式设置了__main__
。
什么构成列出在__main__
特定功能?我偶然发现了一些Python代码,其中有30个以上的函数,但程序员只在__main__
中列出了其中的2个函数。同样地,有时一个代码将具有类在主参数,像这样的(Project
较早定义为对象类):
def main(argv):
filename = ""
outputfilename = ""
p = Project(filename, outputfilename, subdomainNames)
p.generateICs()
if __name__ == "__main__":
main(sys.argv)
在概念上,我无法理解为什么未列出的所有功能。 ..并不是所有的人都需要运行,或者是简单地初始化一些东西?
我看着非典型的代码?我错过了什么关键概念__main__
?一旦我找到了__main__
的功能,是否有特定的方法来格式化它们?
“将函数放入'__main__'”是什么意思? – FogleBird
@FogleBird我认为像在C或C++ void main等) – Denis
@FogleBird对于我所看过的所有脚本,在'__main__'末尾再次列出了脚本中的多个函数我不理解为什么。我以为'__main__'只是一种通过一次调用来运行整个脚本的方法。 – Ason