Я вижу много людей делаютЧто делать, когда __name__ должен не равен «__main__»
if __name__ == '__main__':
main()
где основной() предположительно имеет все полезный код. Что делать, если я не хочу, чтобы скрипт был импортирован? У него нет полезных функций/классов для импорта. Это так же изящно сделать
if __name__ != '__main__':
sys.exit()
print('this script shouldn\'t be imported')
, когда ваш код ничего не сделает для аутсайдера?
Поднять исключение? –
Разве аутсайдер не должен решать, полезен ли ваш модуль для них? – Sneftel
Ананд, я тоже думал об этом, но 'sys.exit()' действительно вызывает исключение SystemExit', поэтому возможно внешнее действие: https://docs.python.org/2/library/sys.html#sys .Выход . Sneftel, хороший момент. – ironicaldiction