Jak zdefiniować globalne zmienne w Pythonie
- 1432
- 305
- Seweryn Augustyniak
W Python zmienna globalna to zmienna zdefiniowana poza dowolną funkcją lub klasą i można ją uzyskać z dowolnego miejsca w kodzie. Zmienne globalne są przydatne do przechowywania wartości, które należy udostępniać w różnych częściach programu, takich jak opcje konfiguracji lub flagi.
Oto kilka kluczowych punktów na temat widoczności zmiennej globalnej w Pythonie:
- Zmienne globalne są zdefiniowane poza funkcjami lub klasami i można uzyskać do nich dostęp z dowolnego miejsca w kodzie.
- Możesz uzyskać dostęp do zmiennych globalnych za pomocą
'światowy'
Słowo kluczowe, ale ogólnie uważa się to za dobrą praktyką, aby unikać używania globalnych zmiennych tak bardzo, jak to możliwe. - Zmienne globalne można modyfikować w ramach funkcji lub klas, ale musisz użyć
'światowy'
Słowo kluczowe, aby wskazać, że modyfikujesz zmienną globalną, zamiast tworzyć nową zmienną lokalną o tej samej nazwie. - Jeśli zmienna globalna i zmienna lokalna mają tę samą nazwę, zmienna lokalna ma pierwszeństwo, a zmienna globalna nie będzie dostępna w ramach funkcji lub klasy.
- Możesz użyć
„Globals ()”
funkcja uzyskania słownika wszystkich zmiennych globalnych i ich wartości oraz„Miejscowie ()”
funkcja uzyskania słownika wszystkich zmiennych lokalnych i ich wartości. - Ważne jest, aby zrozumieć zakres zmiennych w twoim kodzie, ponieważ zmienne o tej samej nazwie w różnych zakresach mogą mieć różne wartości.
- Aby uniknąć zamieszania i ułatwić zrozumienie kodu, ogólnie zaleca się stosowanie opisowych, unikalnych nazw zmiennych i unikanie używania zmiennych globalnych w miarę możliwości.
Zmienna globalna Python
Aby zdefiniować zmienną globalną w Pythonie, po prostu przypisz wartość do zmiennej poza dowolną definicją funkcji lub klasy. Na przykład:
x = 10 y = "Witam, świat!"Z = [1, 2, 3]123 | x = 10y = "Witam, świat!"Z = [1, 2, 3] |
Następnie możesz uzyskać dostęp do tych zmiennych z dowolnego miejsca w kodzie, po prostu odnosząc się do ich nazwisk. Na przykład:
def some_function (): print (x) print (y) print (z) some_function ()123456 | def some_function (): print (x) print (y) print (z) some_function () |
Wprowadzi to wartości zmiennych globalnych x, y i z w ramach funkcji „Some_function”
.
Należy zauważyć, że zmienne globalne można modyfikować w ramach funkcji lub klas, podobnie jak każda inna zmienna. Może to jednak prowadzić do niezamierzonych skutków ubocznych, ponieważ zmiany będą widoczne również w innych częściach programu. Aby tego uniknąć, ogólnie dobrym pomysłem jest unikać bezpośredniej modyfikacji zmiennych globalnych, a zamiast tego użyj ich jako stałych tylko do odczytu.
Widoczność zmiennej globalnej Python w funkcji
Możesz także zdefiniować zmienne globalne w funkcjach lub klasach, ale musisz użyć globalnego słowa kluczowego, aby wskazać, że odnosisz się do globalnej wersji zmiennej. Na przykład:
x = 10 def some_function (): globalny x x = 20 print (x) # wyjście: 10 some_function () print (x) # wyjście: 20123456789 | x = 10 def some_function (): globalny x x = 20 print (x) # wyjście: 10some_function () print (x) # wyjście: 20 |
W tym przykładzie zmienna globalna 'X'
jest zdefiniowany poza funkcją i początkowo jest ustawiony „10”. W funkcji „Some_function”
, 'światowy'
Słowo kluczowe służy do wskazania, że 'X'
Zmienna modyfikowana jest globalna wersja zmiennej, a nie wersja lokalna. W rezultacie wartość 'X'
jest zmodyfikowany do „20”, i ta zmiana jest również widoczna poza funkcją.
Wniosek
Ogólnie uważa się to za dobrą praktykę, aby unikać używania globalnych zmiennych w miarę możliwości, ponieważ mogą uczynić kod trudniejszym do zrozumienia i utrzymania. Zamiast tego często lepszym pomysłem jest przekazywanie wartości jako argumentów do funkcji lub przechowywanie ich w obiektach lub strukturach danych, które można przekazać w razie potrzeby. Może to pomóc zmniejszyć złożoność kodu i ułatwić rozumowanie.
mam nadzieję, że to pomoże! Daj mi znać, jeśli masz jakieś pytania lub potrzebujesz dalszych wyjaśnień.