

\1.函数的使用必须遵循：先定义，后使用。多个函数定义顺序不分先后，别在还没定义时就使用。
\2.函数的定义，就相当于在定义一个变量，如果没有定义而直接调用，就相当于在引用一个不存在的变量名

测试一:
# 定义阶段
def foo():
    print('from foo')
    bar()

foo()  # 调用阶段报错,因为bar函数没有定义。

测试二:
# 定义阶段
def bar():
    print('from bar')
def foo():
    print('from foo')
    bar()

foo()  # 调用阶段正常


测试三:
# 定义阶段不分先后
def foo():
    print('from foo')
    bar()  # 此时只检测语法，并不需要执行bar函数

def bar():
    print('from bar') 

foo()  # 调用阶段不会报错，调用时bar函数已经定义了。

# 结论:函数的使用,必须遵循原则:先定义,后调用。我们在使用函数时,一定要明确地区分定义阶段和调用阶段
# 总结: 函数即“变量”，“变量”必须先定义后引用。未定义而直接引用函数，就相当于在引用一个不存在的变量名


