Приклад-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. Сподіваюся, читачі отримають належні знання про глобальні змінні, а також про локальні змінні після прочитання цього посібника.
Дивіться авторське відео: тут