Pyton

Zrozum zakres zmiennych globalnych w pythonie

Zrozum zakres zmiennych globalnych w pythonie
W większości języków programowania można zdefiniować dwa typy zmiennych. Są to zmienne globalne i zmienne lokalne. Zmienne, które są zdefiniowane poza funkcją nazywamy zmienną globalną. Ta zmienna jest dostępna i można ją zmienić z dowolnego miejsca w skrypcie. Zmienna zadeklarowana wewnątrz funkcji nazywana jest zmienną lokalną. Ale jeśli ta sama nazwa zmiennej istnieje jako zmienne globalne i lokalne to zmienna wewnątrz funkcji otrzymapriorytet a wartośćzmiennej globalnej zostanie zignorowana. Zakres zmiennej globalnej w skrypcie Pythona jest pokazany w tym samouczku na różnych przykładach.

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ą
text = "Witamy w LinuxHint"
# Zdefiniuj funkcję
def printMessage():
# Wydrukuj zmienną globalną z funkcji
print("Globalna zmienna wewnątrz funkcji: \n", tekst)
# Wywołaj funkcję
printMessage()
# Zmień wartość zmiennej globalnej
text = "Naucz się programowania w Pythonie"
# Wydrukuj bieżącą wartość zmiennej globalnej
print("Globalna zmienna poza funkcją: \n", tekst)

Wynik:

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu. Wydrukował wartość „Witamy w LinuxHint' która jest przypisana 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 jej użyćto 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ą
text = "Lubię Pythona"
# Zdefiniuj funkcję
def printMessage():
drukuj(tekst)
text = "Lubię PHP"
# Wywołaj funkcję
printMessage()

Wynik:

Następujące 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ą
text = "Lubię Pythona"
# Zdefiniuj funkcję
def printMessage():
# Zdefiniuj lokalną wartość
text = "Lubię PHP"
# Wydrukuj zmienną lokalną,tekst
print("Wartość 'tekst' wewnątrz funkcji: \n", tekst)
# Wywołaj funkcję
printMessage()
# Wydrukuj zmienną globalną text
print("Wartość 'tekst' poza funkcją: \n", tekst)

Wynik:

Następujące 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, gdy używane są zarówno zmienne globalne, jak i lokalne local. Tutaj, liczba 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ą
num = int(input("Wprowadź liczbę :"))
# Zdefiniuj funkcję
def procent_kalkulacji():
# Rozpoznaj zmienną globalną za pomocą globalnego słowa kluczowego
liczba globalna
# Weź wartość całkowitą jako procent
perVal = int(input("Wprowadź wartość procentową: "))
# Oblicz wartość procentową
wynik = float((liczba * perVal)/100)
# Wydrukuj sformatowany wynik
print("%d procent z %d = %f" %(perVal, num, wynik))
# Zmień wartość zmiennej globalnej
liczba = 500
# Wydrukuj wartość zmiennej globalnej przed wywołaniem funkcji
print("\nWartość num = %d" %num)
# Wywołaj funkcję
cal_percentage()
# Wydrukuj wartość zmiennej globalnej po wywołaniu funkcji
print("\nWartość num = %d" %num)

Wynik:

Następujące 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 globalny6.py który użyje zmiennych globalnych zdefiniowanych w pliku o nazwie globalny5.py. Trzy zmienne globalne są deklarowane w globalny5.py. Musisz zaimportować globalny5 użyć zmiennych w innym skrypcie. Scenariusz globalny6.py obliczy wynagrodzenie trzech typów pracowników na podstawie wartości wejściowych i zmiennych globalnych.

#!/usr/bin/env python3
# to jest globalne5.plik py
# Podstawowa struktura wynagrodzeń firmy
Podstawowy = 5000
Medyczny = 500
Transport = 500 #!/usr/bin/env python3
# to jest globalne6.plik py
# Importuj zmienne globalne z global5.py
importuj globalnie5
# Weź nazwisko pracownika
name = input("Wprowadź nazwisko pracownika: ")
# Weź nazwę posta
post = input("Wprowadź post: ")
# Zainicjuj zmienną błędu
błąd = Fałsz
# Sprawdź stanowisko i ustal wynagrodzenie podstawowe na podstawie stanowiska
jeśli (post.górna() == "CEO"):
podstawowy = globalny5.Podstawowy + (globalny5.Podstawowe*0.4)
elif(post.górna() == "MENEDŻER"):
podstawowy = globalny5.Podstawowy + (globalny5.Podstawowe*0.25)
elif(post.górna() == "KSIĘGOWOŚĆ"):
podstawowy = globalny5.Podstawowy + (globalny5.Podstawowe*0.15)
jeszcze:
# Ustaw błąd na true, jeśli nie znaleziono wartości post
błąd = prawda
# Wydrukuj pensję, jeśli błąd jest flase
jeśli (błąd == Fałsz):
wynagrodzenie = podstawowe + globalne5.Medycyna + globalna5.Transport
print("Wynagrodzenie %s wynosi %d" %(imię, wynagrodzenie))
jeszcze:
print("Nie znaleziono posta")

Wynik:

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu. Tutaj skrypt jest uruchamiany dwa razy z prawidłowym postem i nieprawidłowym postem.

Wniosek:

Pojęcie zmiennej globalnej w Pythonie jest 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 local.

Obejrzyj wideo autora: tutaj

Remap your mouse buttons differently for different software with X-Mouse Button Control
Maybe you need a tool that could make your mouse's control change with every application that you use. If this is the case, you can try out an applica...
Microsoft Sculpt Touch Wireless Mouse Review
I recently read about the Microsoft Sculpt Touch wireless mouse and decided to buy it. After using it for a while, I decided to share my experience wi...
AppyMouse On-screen Trackpad and Mouse Pointer for Windows Tablets
Tablet users often miss the mouse pointer, especially when they are habitual to using the laptops. The touchscreen Smartphones and tablets come with m...