Portée de la variable :
Généralement, les variables définies en dehors de la fonction deviennent des variables globales, et les variables définies à l'intérieur de la fonction sont appelées variables locales.
Les variables globales sont lisibles dans toutes les portées, les variables locales ne peuvent être lues que dans cette fonction
Lorsque la fonction lit des variables, elle lit d'abord les variables locales de la fonction elle-même, puis passe à Lire les variables globales
Variables globales
lire, toutes peuvent lire
affectation, global
dictionnaire, la liste peut être modifiée
Les variables globales sont en majuscules
Par exemple,
name = 'Tim' #全局变量 def f1(): age = 18 #局部变量 print(age,name) def f2(): age=19 #局部变量 print(age,name) f1() f2() >>> 18 Tim 19 Tim
Les variables globales peuvent également être définies à l'intérieur d'une fonction :
name = 'Tim' #全局变量 def f1(): age = 18 #局部变量 global name #定义全局变量 name = 'Eric' print(age,name) f1() print(name)
Variables globales sont lisibles par défaut et peuvent être modifiés si nécessaire La valeur d'une variable globale doit être définie en utilisant global à l'intérieur de la fonction
Spécial : liste, dictionnaire, peuvent être modifiés, mais ne peuvent pas être réaffectés si nécessaire. être réaffectée, la variable globale doit être définie en utilisant global à l'intérieur de la fonction
NAME = ['Tim','mike'] #全局变量 NAME1 = ['Eric','Jeson'] #全局变量 NAME3 = ['Tom','jane'] #全局变量 def f1(): NAME.append('Eric') #列表的append方法可改变外部全局变量的值 print('函数内NAME: %s'%NAME) NAME1 = '123' #重新赋值不可改变外部全局变量的值 print('函数内NAME1: %s'%NAME1) global NAME3 #如果需要重新给列表赋值,需要使用global定义全局变量 NAME3 = '123' print('函数内NAME3: %s'%NAME3) f1() print('函数外NAME: %s'%NAME) print('函数外NAME1: %s'%NAME1) print('函数外NAME3: %s'%NAME3) >>> 函数内NAME: ['Tim', 'mike', 'Eric'] 函数内NAME1: 123 函数内NAME3: 123 函数外NAME: ['Tim', 'mike', 'Eric'] 函数外NAME1: ['Eric', 'Jeson'] 函数外NAME3: 123
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!