局部变量是在函数体内定义的变量,因此,它只在函数体内有效,只能在函数体内使用。如果在函数体外使用了局部变量,那么程序会抛出异常。
【范例4-9】定义一个名为fun的函数,首先在该函数体内定义一个变量x(局部变量)并为其赋值,然后输出该变量的值,最后在函数体外再次输出该变量的值。代码如下:
运行程序,抛出NameError异常,输出结果如下:
程序报错的原因是,该程序试图在函数体外访问局部变量,但是局部变量x只在函数体内有效,程序访问的地方不在局部变量x的作用域中。