我知道为“脚本式”Python程序定义一个main()方法是良好的编程风格,这样它就可以作为模块被包含在以后的程序中。因此,假设这是一段随机代码片段:
导致我的所有代码都缩进了一个级别。 我尽量避免在我的代码中出现不必要的缩进/嵌套,以实现最大程度的清晰度,因此我想知道是否可以在这里做些什么,比如:
类似这样的做法是否可行?是否值得推荐?是否符合惯用语?
a = 5
if a > 0:
print a
变成
def main():
a = 5
if a > 0:
print a
if __name__ == "__main__":
main()
导致我的所有代码都缩进了一个级别。 我尽量避免在我的代码中出现不必要的缩进/嵌套,以实现最大程度的清晰度,因此我想知道是否可以在这里做些什么,比如:
if __name__ != "__main__":
return # just leave this file
a = 5
if a > 0:
print a
但是(当然)这会触发:
SyntaxError: 'return' outside function
类似这样的做法是否可行?是否值得推荐?是否符合惯用语?
if __name__ == "__main__"
检查。在这些情况下使用它主要是为了澄清脚本的流程,并防止意外的副作用,如果它被导入到其他地方。只要你知道自己在做什么(例如不考虑副作用而导入它),你就可以自由选择不使用它。 - l4mpi