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 ("Значение 'текста' внутри функции: \ n", текст)
# Вызов функции
printMessage ()
# Распечатать глобальную переменную, текст
print ("Значение 'текста' вне функции: \ n", текст)

Выход:

Следующий вывод появится после запуска скрипта.

Пример-3: Использование глобальной переменной внутри функции

В предыдущем примере показано, что глобальная переменная недоступна внутри функции. Ты можешь использовать глобальный ключевое слово для доступа к глобальной переменной из любой функции. В следующем скрипте, cal_percentage () функция определена для вычисления процента любого числа, в котором используются как глобальные, так и локальные переменные. Здесь, число - глобальная переменная, а perVal это локальная переменная. Глобальный ключевое слово используется здесь для идентификации глобальной переменной внутри функции, а значение глобальной переменной изменяется внутри функции.

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

Выход:

Следующий вывод появится после запуска скрипта. Здесь рассчитывается и печатается 10% от 350.

Пример-4: Использование глобальных переменных из другого скрипта

В следующем примере показано, как глобальную переменную, объявленную в одном скрипте, можно использовать в другом скрипте. Предположим, имя файла глобальный6.ру который будет использовать глобальные переменные, определенные в файле с именем global5.ру. Три глобальные переменные объявлены в global5.ру. Вы должны импортировать global5 использовать переменные в другом скрипте. Сценарий глобальный6.ру рассчитает заработную плату трех типов сотрудников на основе входных значений и глобальных переменных.

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

Выход:

Следующий вывод появится после запуска скрипта. Здесь скрипт запускается два раза с допустимым сообщением и недопустимым сообщением.

Заключение:

Концепция глобальной переменной в Python объясняется в этом руководстве с различными простыми примерами для новых пользователей Python. Я надеюсь, что читатели получат надлежащие знания о глобальных переменных, а также о локальных переменных после прочтения этого руководства.

Посмотреть авторское видео: здесь

Как изменить указатель мыши и размер курсора, цвет и схему в Windows 10
Указатель мыши и курсор в Windows 10 - очень важные аспекты операционной системы. То же самое можно сказать и о других операционных системах, так что,...
Бесплатные движки с открытым исходным кодом для разработки игр для Linux
В этой статье будет рассмотрен список бесплатных игровых движков с открытым исходным кодом, которые можно использовать для разработки 2D- и 3D-игр в L...
Shadow of the Tomb Raider для Linux Учебное пособие
Shadow of the Tomb Raider - двенадцатое дополнение к серии Tomb Raider - франшизе приключенческой игры, созданной Eidos Montreal. Игра была очень хоро...