Wie deklariere ich eine globale Variable in einer Funktion in Python?
Das heißt, dass es nicht vorher deklariert werden muss, sondern außerhalb der Funktion verwendet werden kann.
Ja aber warum?
def a():
globals()['something'] = 'bob'
def function(arguments):
global var_name
var_name = value #must declare global prior to assigning value
Dies funktioniert in jeder Funktion, unabhängig davon, ob sie sich im selben Programm befindet oder nicht.
Hier ist eine andere Möglichkeit, es zu verwenden:
def function():
num = #code assigning some value to num
return num
HINWEIS: Wenn Sie das integrierte return
verwenden, wird das Programm (oder die Funktion) automatisch gestoppt, unabhängig davon, ob es beendet ist oder nicht.
Sie können dies in einer Funktion wie der folgenden verwenden:
if function()==5 #if num==5:
#other code
Auf diese Weise können Sie die Variable außerhalb der Funktion verwenden. Muss nicht unbedingt global deklariert werden.
Um eine Variable von einer Funktion zur nächsten zu verwenden, können Sie außerdem Folgendes tun:
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]
Auf diese Weise können Sie die Variable in einer anderen Funktion oder einem anderen Programm verwenden, ohne eine globale Variable oder das integrierte return
zu verwenden.