Przykład-1: Proste użycie zmiennej globalnej
Poniższy przykład pokazuje proste użycie zmiennej globalnej wewnątrz funkcji i poza nią. Tutaj zmienna globalna o nazwie tekst służy do przypisywania danych ciągu. Niestandardowa funkcja o nazwie printMessage() jest zdefiniowany do drukowania wartości zmiennej globalnej. Wartość tekst zmienna jest wypisywana wewnątrz funkcji i na zewnątrz funkcji po zmianie wartości.
#!/usr/bin/env python3
# Zdefiniuj zmienną globalną
tekst= 'Witamy w LinuxHint'
# Zdefiniuj funkcję
definitywnieprintMessage():
# Wydrukuj zmienną globalną z funkcji
wydrukować('Globalna zmienna wewnątrz funkcji: ',tekst)
# Wywołaj funkcję
printMessage()
# Zmień wartość zmiennej globalnej
tekst= „Naucz się programowania w Pythonie”
# Wydrukuj bieżącą wartość zmiennej globalnej
wydrukować('Globalna zmienna poza funkcją: ',tekst)
Wyjście:
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu. Wydrukował wartość „ Witamy w LinuxHint’ która jest przypisywana do zmiennej przed wywołaniem funkcji. Następnie wypisał wartość, „Naucz się programowania w Pythonie” po zmianie wartości zmiennej.
Przykład-2: Użycie zmiennej globalnej i lokalnej o tej samej nazwie
Jeśli chcesz zadeklarować nazwę zmiennej wewnątrz funkcji, która jest już zadeklarowana jako zmienna globalna przed w pythonie i chcesz użyć zmiennej, potraktuje zmienną jako zmienną lokalną i wygeneruje błąd. Poniższy skrypt pokaże błąd. Tutaj, tekst zmienna jest zdefiniowana jako zmienna globalna i lokalna.
#!/usr/bin/env python3# Zdefiniuj zmienną globalną
tekst= „Lubię Pythona”
# Zdefiniuj funkcję
definitywnieprintMessage():
wydrukować(tekst)
tekst= „Lubię PHP”
# Wywołaj funkcję
printMessage()
Wyjście:
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu.
Aby uniknąć powyższej sytuacji i jeśli chcesz zadeklarować zmienną lokalną o tej samej nazwie co zmienna globalna, musisz najpierw przypisać zmienną lokalną wewnątrz funkcji. Poniższy skrypt pokazuje, że zmiany w zmiennej lokalnej nie powodują żadnych zmian w zmiennej globalnej. tekst zmienna jest tutaj wypisywana wewnątrz i na zewnątrz funkcji.
#!/usr/bin/env python3# Zdefiniuj zmienną globalną
tekst= „Lubię Pythona”
# Zdefiniuj funkcję
definitywnieprintMessage():
# Zdefiniuj lokalną wartość
tekst= „Lubię PHP”
# Wydrukuj zmienną lokalną,tekst
wydrukować('Wartość 'text' wewnątrz funkcji: ',tekst)
# Wywołaj funkcję
printMessage()
# Wydrukuj zmienną globalną text
wydrukować('Wartość 'tekst' poza funkcją: ',tekst)
Wyjście:
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu.
Przykład-3: Użycie zmiennej globalnej wewnątrz funkcji
Poprzedni przykład pokazuje, że zmienna globalna nie jest dostępna wewnątrz funkcji. Możesz użyć globalny słowo kluczowe, aby uzyskać dostęp do zmiennej globalnej z dowolnej funkcji. W poniższym skrypcie cal_percentage() funkcja jest zdefiniowana do obliczania procentu dowolnej liczby, w której używane są zarówno zmienne globalne, jak i lokalne. Tutaj, na jednego jest zmienną globalną, a perVal jest zmienną lokalną. światowy słowo kluczowe jest tutaj używane do identyfikacji zmiennej globalnej wewnątrz funkcji, a wartość zmiennej globalnej jest zmieniana wewnątrz funkcji.
#!/usr/bin/env python3# Weź wartość całkowitą
na jednego= int(Wejście('Wprowadź liczbę: '))
# Zdefiniuj funkcję
definitywniecal_percentage():
# Rozpoznaj zmienną globalną za pomocą globalnego słowa kluczowego
światowyna jednego
# Weź wartość całkowitą jako procent
perVal= int(Wejście('Wprowadź wartość procentową: '))
# Oblicz wartość procentową
wynik= pływak((czy *perVal)/100)
# Wydrukuj sformatowany wynik
wydrukować('%d procent z %d = %f'%(perVal,na jednego,wynik))
# Zmień wartość zmiennej globalnej
na jednego= 500
# Wydrukuj wartość zmiennej globalnej przed wywołaniem funkcji
wydrukować(' Wartość num = %d'%na jednego)
# Wywołaj funkcję
cal_percentage()
# Wydrukuj wartość zmiennej globalnej po wywołaniu funkcji
wydrukować(' Wartość num = %d'%na jednego)
Wyjście:
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu. Tutaj obliczane i drukowane jest 10% z 350.
Przykład-4: Użycie zmiennych globalnych z innego skryptu
Poniższy przykład pokazuje, jak zmienna globalna zadeklarowana w jednym skrypcie może być użyta w innym skrypcie. Załóżmy, że nazwa pliku to global6.py który użyje zmiennych globalnych zdefiniowanych w pliku o nazwie global5.py . Trzy zmienne globalne są zadeklarowane w global5.py . Musisz importować globalny5 użyć zmiennych w innym skrypcie. Scenariusz global6.py obliczy wynagrodzenie trzech rodzajów pracowników na podstawie wartości wejściowych i zmiennych globalnych.
#!/usr/bin/env python3# to jest plik global5.py
# Podstawowa struktura wynagrodzeń firmy
Podstawowy= 5000
Medyczny= 500
Transport= 500 #!/usr/bin/env python3
# to jest plik global6.py
# Importuj zmienne globalne z global5.py
importglobalny5
# Weź nazwisko pracownika
Nazwa= Wejście('Wprowadź nazwisko pracownika:')
# Weź nazwę posta
Poczta= Wejście('Wprowadź post: ')
# Zainicjuj zmienną błędu
błąd= Fałszywe
# Sprawdź stanowisko i ustal wynagrodzenie podstawowe na podstawie stanowiska
Jeśli(Poczta.górny() == „CEO”):
podstawowy=globalny5.Podstawowy+(globalny5.Podstawowy*0,4)
Elifa(Poczta.górny() == 'MENEDŻER'):
podstawowy=globalny5.Podstawowy+(globalny5.Podstawowy*0,25)
Elifa(Poczta.górny() == 'KSIĘGOWA'):
podstawowy=globalny5.Podstawowy+(globalny5.Podstawowy*0,15)
w przeciwnym razie:
# Ustaw błąd na true, jeśli nie znaleziono wartości post
błąd= Prawdziwe
# Wydrukuj pensję, jeśli błąd jest fleszem
Jeśli (błąd== Fałszywe):
pensja=podstawowe + globalne5.Medyczny+ globalny5.Transport
wydrukować('Wynagrodzenie %s wynosi %d'%(Nazwa,pensja))
w przeciwnym razie:
wydrukować(„Nie znaleziono wpisu”)
Wyjście:
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu. Tutaj skrypt jest uruchamiany dwa razy z ważnym postem i nieprawidłowym postem.
Wniosek:
Pojęcie zmiennej globalnej w Pythonie zostało wyjaśnione w tym samouczku z różnymi prostymi przykładami dla nowych użytkowników Pythona. Mam nadzieję, że po przeczytaniu tego samouczka czytelnicy uzyskają odpowiednią wiedzę na temat zmiennych globalnych, a także zmiennych lokalnych.
Obejrzyj film autora: tutaj