Загрузка...

Запуск только при прямом старте файла

У вас уже есть два вопроса, которые пишут одну строку. Вы хотите, чтобы эти вопросы работали только тогда, когда вы сами запускаете этот файл. Файл называется box.py. Вы запускаете box.py, вводите mug, затем 4. Последняя строка на экране — mug 4.

Два вопроса, которые работают только при прямом старте box.py

python
def label(item, count):
    return f"{item} {count}"

if __name__ == "__main__":
    item = input("item: ")
    count = input("how many: ")
    print(label(item, count))

После старта box.py на экране три строки. В первой строке программа ждёт на item:, вы вводите mug и нажимаете Enter. Во второй строке программа ждёт на how many:, вы вводите 4 и нажимаете Enter. В третьей строке print пишет mug 4, это последняя строка. Эти строки сработали, потому что вы запустили именно этот файл. В имени __name__ лежит __main__. Строка if видит, что они совпадают, поэтому вопросы работают. Программа завершается. Четвёртой строки нет, и None не пишется.

Другой файл, shelf.py, который открывает box.py через import

python
import box
print("shelf")

Теперь вы запускаете shelf.py и не вводите ни mug, ни 4. На экране одна строка: shelf. Файл shelf.py открывает box.py через import. Поэтому внутри box.py в __name__ лежит box. box — это не __main__, поэтому вопросы не работают. item: на экране не появляется, и mug 4 не пишется. Пропущенные вопросы не пишут None. print пишет shelf, потому что эта строка есть в файле, который вы запустили. Программа завершается.

Теперь вы можете не давать двум вопросам работать, пока сами не запустите box.py. Запустите box.py, введите mug, затем 4, и последняя строка будет mug 4. Запустите shelf.py, и на экране будет только shelf. Следующая страница отдаёт вам одно значение, потом следующее.

Вопросы работают, только когда вы запускаете файл сами

Вы запускаете box.py, вводите mug, затем 4: последняя строка — mug 4. Вы запускаете shelf.py: на экране только shelf. Следующая страница отдаёт вам одно значение, потом следующее.

🧠 Проверьте Свои Знания

Готов к Началу

Проверьте Свои Знания

Бросьте себе вызов с помощью этой интерактивной викторины и узнайте, насколько хорошо вы понимаете тему

❓
6
Вопросы
🎯
70%
Для Прохождения
♾️
∞
Время
🔄
∞
Попытки

📝 Инструкции

  • Внимательно прочитайте каждый вопрос
  • Выберите лучший ответ на каждый вопрос
  • Вы можете пересдавать тест столько раз, сколько захотите
  • Ваш прогресс будет показан вверху