【发布时间】:2017-02-02 05:25:04
【问题描述】:
刚接触python,对执行流程感到困惑:
为了详细说明,我在说明以下示例:
示例 1:
def hello():
print("hello world")
python()
def python():
print("testing main")
if __name__ == "__main__":
hello()
**output :**
hello world
testing main
注意:我知道 __name__ == "__main__" 的用法。
示例 2:
python()
def python():
print("testing main")
**output**
File "main_flow.py", line 2, in <module>
python()
NameError: name 'python' is not defined
据我所知,python 是按顺序执行程序的(如果我错了,请纠正我),因此在示例 2 中遇到 python() 方法时无法找到它。
我的困惑是为什么在示例 1 中没有发生类似的错误,这种情况下的执行流程是什么。
【问题讨论】:
-
因为在第一个例子中,
python在定义之前没有被执行,所以在第二个例子中,它是。
标签: python python-2.7