Comment déclarer une variable globale dans une fonction en Python?
Autrement dit, afin qu'il ne doive pas être déclaré avant mais peut être utilisé en dehors de la fonction.
Oui mais pourquoi?
def a():
globals()['something'] = 'bob'
def function(arguments):
global var_name
var_name = value #must declare global prior to assigning value
Cela fonctionnera dans n'importe quelle fonction, que ce soit dans le même programme ou non.
Voici une autre façon de l'utiliser:
def function():
num = #code assigning some value to num
return num
REMARQUE: L'utilisation du return
intégré arrêtera automatiquement le programme (ou la fonction), qu'il soit terminé ou non.
Vous pouvez l'utiliser dans une fonction comme celle-ci:
if function()==5 #if num==5:
#other code
Cela vous permettrait d'utiliser la variable en dehors de la fonction. Ne doit pas nécessairement être déclaré global.
De plus, pour utiliser une variable d'une fonction à une autre, vous pouvez faire quelque chose comme ceci:
import primes as p #my own example of a module I made
p.prevPrimes(10) #generates primes up to n
for i in p.primes_dict:
if p.primes_dict[i]: #dictionary contains only boolean values
print p.primes_dict[i]
Cela vous permettra d'utiliser la variable dans une autre fonction ou un autre programme sans avoir à utiliser une variable globale ou le return
intégré.