Python中有两种类型的变量作用域:全局变量和局部变量
全局变量是定义在函数外部,可以在任何函数中访问的变量。在Python中,可以使用global关键字在函数内部修改全局变量的值。
例如,以下代码中的变量website是全局变量:
website = "pidancode.com" def print_website(): print(website) print_website() # 输出 "pidancode.com"
局部变量是定义在函数内部,只能在该函数内部访问的变量。如果尝试在函数外部访问局部变量,会引发NameError异常。
例如,以下代码中的变量message是局部变量:
def print_message(): message = "Hello, World!" print(message) print_message() # 输出 "Hello, World!"
需要注意的是,如果在函数内部使用与全局变量同名的变量,则该变量会成为一个新的局部变量,而不是修改全局变量的值。如果需要在函数内部修改全局变量的值,可以使用global关键字,如下所示:
website = "pidancode.com" def set_website(new_website): global website website = new_website set_website("皮蛋编程") print(website) # 输出 "皮蛋编程"
在上面的代码中,set_website函数中的global website语句将website变量声明为全局变量,然后可以在函数内部修改它的值。
相关文章