Python核心编程从入门到开发实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

4.3.2 全局变量

与局部变量对应,全局变量是能够作用于函数体内外的变量,它在整个Python文件中声明,在全局范围内都可以访问。定义全局变量有两种方式:一种方式是在函数体外定义一个变量,这种情况不仅可以在函数体外访问该变量,也可以在函数体内访问该变量,这是因为在函数体外定义的变量是全局变量;另一种方式是在函数体内定义一个变量,但是使用global关键字进行修饰,这样的变量也是全局变量,不仅可以在函数体外访问该变量,而且可以在函数体内对其进行修改。

【范例4-10】定义一个名为fun的函数,测试全局变量的两种情况。代码如下:

运行程序,输出结果如下:

从运行结果中可以看出,使用关键字global在函数体内就可以修改全局变量的值。需要特别注意的是,虽然当局部变量与全局变量重名时,对在函数体内定义的变量进行赋值不会影响在函数体外定义的变量,但是在实际开发中并不建议这样做,因为这样做很容易让代码产生混乱,还要区分哪些是局部变量、哪些是全局变量。