Python

Зрозумійте область застосування глобальних змінних у python

Зрозумійте область застосування глобальних змінних у python
У більшості мов програмування можна визначити два типи змінних. Це глобальні змінні та локальні змінні. Змінні, які визначені поза функцією, називаються глобальними змінними. Ця змінна доступна та може бути змінена з будь-якої точки сценарію. Змінна, яка оголошена всередині функції, називається локальною змінною. Але якщо одне і те ж ім'я змінної існує як глобальна та локальна змінні, тоді змінна всередині функції отримає пріоритет, а значення глобальної змінної буде ігноруватися. Сфера дії глобальної змінної у сценарії python показана в цьому посібнику на різних прикладах.

Приклад-1: Просте використання глобальної змінної

У наступному прикладі показано просте використання глобальної змінної всередині функції та за межами функції. Тут використовується глобальна змінна з іменем текст використовується для призначення рядкових даних. Спеціальна функція з іменем printMessage () визначається для друку значення глобальної змінної. Значення текст змінна друкується всередині функції та поза функцією після зміни значення.

#!/ usr / bin / env python3
# Визначте глобальну змінну
text = "Ласкаво просимо до LinuxHint"
# Визначте функцію
def printMessage ():
# Друк глобальної змінної з функції
print ("Глобальна змінна всередині функції: \ n", текст)
# Виклик функції
printMessage ()
# Змінити значення глобальної змінної
text = "Вивчення програмування на Python"
# Вивести поточне значення глобальної змінної
print ("Глобальна змінна поза функцією: \ n", текст)

Вихід:

Наступний результат з’явиться після запуску сценарію. Він надрукував значення, 'Ласкаво просимо до LinuxHint ' що присвоюється змінній перед викликом функції. Далі він надрукував значення, 'Дізнайтеся програмування на Python'  після зміни значення змінної.

Приклад-2: Використання глобальної та локальної змінних з однаковою назвою

Якщо ви хочете оголосити ім'я змінної всередині функції, яка вже оголошена як глобальна змінна раніше в python, і хочете використовувати змінну, тоді вона буде обробляти змінну як локальну змінну та генерувати помилку. Наступний сценарій покаже помилку. Ось, текст змінна визначається як глобальна та локальна змінні.

#!/ usr / bin / env python3
# Визначте глобальну змінну
text = "Мені подобається Python"
# Визначте функцію
def printMessage ():
друк (текст)
text = "Мені подобається PHP"
# Виклик функції
printMessage ()

Вихід:

Наступний результат з’явиться після запуску сценарію.

Щоб уникнути вищезазначеної ситуації, і якщо ви хочете оголосити локальну змінну з тим самим іменем, що і глобальна змінна, вам слід спочатку призначити локальну змінну всередині функції. Наступний сценарій показує, що зміни локальної змінної не вносять жодних змін у глобальну змінну. текст тут виводиться змінна всередині та зовні функції.

#!/ usr / bin / env python3
# Визначте глобальну змінну
text = "Мені подобається Python"
# Визначте функцію
def printMessage ():
# Визначте місцеве значення
text = "Мені подобається PHP"
# Вивести локальну змінну, текст
print ("Значення 'text' усередині функції: \ n", текст)
# Виклик функції
printMessage ()
# Друк глобальної змінної, текст
print ("Значення 'text' поза функцією: \ n", текст)

Вихід:

Наступний результат з’явиться після запуску сценарію.

Приклад-3: Використання глобальної змінної всередині функції

Попередній приклад показує, що глобальна змінна недоступна всередині функції. Можна використовувати глобальний ключове слово для доступу до глобальної змінної з будь-якої функції. У наступному сценарії, cal_percentage () Функція визначена для обчислення відсотка будь-якого числа, де використовуються як глобальні, так і локальні змінні. Ось, число є глобальною змінною, і perVal є локальною змінною. глобальний тут використовується ключове слово для ідентифікації глобальної змінної всередині функції, а значення глобальної змінної змінюється всередині функції.

#!/ usr / bin / env python3
# Візьмемо ціле число
num = int (введення ("Введіть число:"))
# Визначте функцію
def cal_percentage ():
# Розпізнати глобальну змінну за допомогою глобального ключового слова
глобальне число
# Візьмемо ціле значення у відсотках
perVal = int (input ("Введіть відсоткове значення:"))
# Обчисліть відсоткове значення
result = float ((num * perVal) / 100)
# Роздрукуйте відформатований результат
друк ("% d відсоток% d =% f"% (за значення, число, результат))
# Змінити значення глобальної змінної
число = 500
# Вивести значення глобальної змінної перед викликом функції
print ("\ nЗначення num =% d"% num)
# Виклик функції
cal_percentage ()
# Вивести значення глобальної змінної після виклику функції
print ("\ nЗначення num =% d"% num)

Вихід:

Наступний результат з’явиться після запуску сценарію. Тут розраховується і друкується 10% від 350.

Приклад-4: Використання глобальних змінних з іншого сценарію

Наступний приклад показує, як глобальна змінна, оголошена в одному сценарії, може використовуватися в іншому сценарії. Припустимо, ім'я файлу - глобальний6.py який буде використовувати глобальні змінні, визначені у файлі з іменем глобальний5.py. Три глобальні змінні оголошені в глобальний5.py. Ви повинні імпортувати глобальний5 використовувати змінні в іншому сценарії. Сценарій глобальний6.py буде розраховувати заробітну плату трьох типів працівників на основі вхідних величин та загальних змінних.

#!/ usr / bin / env python3
# це глобально5.файл py
# Базова структура заробітної плати компанії
Базовий = 5000
Медичний = 500
Транспорт = 500 #!/ usr / bin / env python3
# це глобально6.файл py
# Імпортуйте глобальні змінні з global5.py
імпорт глобальний5
# Візьміть ім’я працівника
name = input ("Введіть ім'я працівника:")
# Візьміть назву посади
post = input ("Ввести допис:")
# Ініціалізувати змінну помилки
error = False
# Перевірте посаду та встановіть основну зарплату на основі посади
якщо (пост.верхній () == "CEO"):
basic = global5.Базовий + (глобальний5.Базовий * 0.4)
elif (пост.верхній () == "МЕНЕДЖЕР"):
basic = global5.Базовий + (глобальний5.Базовий * 0.25)
elif (пост.верхній () == "БУХГАЛТЕР"):
basic = global5.Базовий + (глобальний5.Базовий * 0.15)
ще:
# Встановити помилку як true, якщо значення публікації не знайдено
помилка = Істина
# Роздрукуйте зарплату, якщо помилка помилкова
if (помилка == False):
зарплата = основна + глобальна5.Медичний + глобальний5.Транспорт
print ("Зарплата% s становить% d"% (ім'я, зарплата))
ще:
print ("Публікацію не знайдено")

Вихід:

Наступний результат з’явиться після запуску сценарію. Тут сценарій запускається два рази з дійсним та недійсним повідомленням.

Висновок:

Поняття глобальної змінної в python пояснюється в цьому посібнику з різними простими прикладами для нових користувачів python. Сподіваюся, читачі отримають належні знання про глобальні змінні, а також про локальні змінні після прочитання цього посібника.

Дивіться авторське відео: тут

Як встановити League of Legends на Ubuntu 14.04
Якщо ви шанувальник League of Legends, то це можливість для вас тестувати League of Legends. Зверніть увагу, що LOL підтримується на PlayOnLinux, якщо...
Встановіть останню стратегічну гру OpenRA на Ubuntu Linux
OpenRA - це ігровий движок Libre / Free Real Time Strategy, який відтворює ранні ігри Вествуда, такі як класичний Command & Conquer: Red Alert. Пошире...
Встановіть найновіший емулятор Dolphin для Gamecube & Wii на Linux
Емулятор Dolphin дозволяє грати у вибрані вами ігри Gamecube та Wii на персональних комп’ютерах Linux (ПК). Будучи вільно доступним і відкритим ігров...