<MyRusakov.ru />

Создание игр на Unreal Engine 4

Создание игр на Unreal Engine 4

Данный курс научит Вас созданию игр на Unreal Engine 4. Курс состоит из 12 модулей, в которых Вы с нуля освоите этот движок и сможете создавать самые разные игры.

В курсе Вы получите всю необходимую теоретическую часть, а также увидите массу практических примеров. Дополнительно, почти к каждому уроку идут упражнения для закрепления материала.

Помимо самого курса Вас ждёт ещё 5 бесплатных ценных Бонусов: «Динамическая смена дня и ночи», «Создание динамической погоды», «Создание искусственного интеллекта для NPC», «Создание игры под мобильные устройства» и «Создание прототипа RPG с открытым миром».

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Зачем Вы изучаете программирование/создание сайтов?

Специальная переменная __name__ в Python. Часть 2

Специальная переменная __name__ в Python. Часть 2

В прошлой статье мы рассматривали работу специальной переменной __ name __.

В этой статье, мы узнаем, как использовать выражение if __ name __ == "__ main __", и для чего оно нужно.

В прошлый раз мы создали два файла mod_one.py и mod_two.py, и поместили в них проверку на значение, которое __ name __ получает в каждом из модулей. Также выяснили что переменная __ name __ для запускаемого файла/модуля всегда будет __ main __. Но переменная __ name __ для всех других импортируемых модулей будет установлена на имя их модуля.

Обычный способ использования __ name __ и __ main __ выглядит следующим образом:


if __name__ == "__main__":
    ....

Рассмотрим это на примерах. Для чего создайте файлы mod_one.py и mod_two.py со следующим кодом:



# mod_one:

# coding=utf-8
import mod_two

print("Значение __name__ для mod_one равно: {0}".format(__name__))

if __name__ == "__main__":
   print("Файл mod_one выполняется при непосредственном запуске")
else:
   print("Файл mod_one выполняется при импорте")

   
# mod_two:

# coding=utf-8
print("Значение __name__ для mod_two равно: {0}".format(__name__))

if __name__ == "__main__":
   print("Файл mod_two выполняется при непосредственном запуске")
else:
   print("Файл mod_two выполняется при импорте")

Запуская mod_one вы увидите, что программа распознала, какой из этих двух модулей является __ main__ и выполнила код в соответствии с нашими первыми операторами if else.

Результат должен выглядеть так:


Значение __name__ для mod_two равно: mod_two
Файл mod_two выполняется при импорте
Значение __name__ для mod_one равно: __main__
Файл mod_one выполняется при непосредственном запуске

Запустив файл mod_two напрямую, мы увидим что переменная __ name __, установлена в значении main:


# вывод:
Значение __name__ для mod_two равно: __main__
Файл mod_two выполняется при непосредственном запуске

Когда модуль mod_two, импортируется и запускается, его функции будут импортированы, а код верхнего уровня выполнен.

Чтобы увидеть этот процесс в действии, дополним код:


# mod_two теперь содержит функцию

# coding=utf-8
print("Значение __name__ для mod_two равно: {0}".format(__name__))

def method_three():
   print("Функция №3 выполняется")

if __name__ == "__main__":
   print("Файл mod_two выполняется при непосредственном запуске")
else:
   print("Файл mod_two выполняется при импорте")


   
# mod_one

# coding=utf-8
import mod_two

def method_one():
   print("Выполняется первая функция")

def method_two():
   print("Функция вторая выполняется")

print("Значение __name__ для mod_one равно: {0}".format(__name__))

if __name__ == "__main__":
   print("Файл mod_one выполняется при непосредственном запуске")
else:
   print("Файл mod_one выполняется при импорте")

Теперь функции загружены, но не запущены. И чтобы выполнить одну из функций, изменим часть кода после выражения if __ name __ == "__ main __" в файле mod_one на следующее:


# mod_one
.................
if __name__ == "__main__":
   print("Файл mod_one выполняется при непосредственном запуске")
   method_two()
else:
   print("Файл mod_one выполняется при импорте")

   
   
# вывод:
.....................
Функция №2 выполняется

Также можно запустить функции импортируемого модуля из файла mod_one. Для чего модифицируем его еще одной строкой:


if __name__ == "__main__":
   print("Файл mod_one выполняется при непосредственном запуске")
   method_two()
   # вызов функции из модуля mod_two
   mod_two.method_three()
else:
   print("Файл mod_one выполняется при импорте")


# вывод:
................
Функция №2 выполняется
Функция №3 выполняется

Теперь предположим что файл mod_two содержит множество функций, и мы хотим импортировать только одну. Для начала добавим в файл mod_two вторую функцию:


# coding=utf-8

................
def method_four():
   print("Функция №4 выполняется")

if __name__ == "__main__":
   print("Файл mod_two выполняется при непосредственном запуске")
else:
   print("Файл mod_two выполняется при импорте")

И для импорта конкретных функций из модуля используем блок from import в файле mod_one:



# coding=utf-8

# импорт функции
from mod_two import method_three

.......................

if __name__ == "__main__":
   print("Файл mod_one выполняется при непосредственном запуске")
   method_two()
   # вызов импортированной функции
   method_three()
else:
   print("Файл mod_one выполняется при импорте")

Таким образом можно предотвратить выполнение некоторого кода из импортируемого модуля, просто поместив его в блок if __ name __ == "__ main __":.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.