Примечание: в примерах ниже предполагается, что у вас уже есть файл с содержимым и именем, описанным в начале раздела "Определение модуля и его импорт"
Также можно импортировать отдельные объекты модуля, но ввести их в глобальную область видимости скрипта с альтернативными именами:
>>> a = ['foo', 'bar', 'baz'] >>> fib = [0, 1, 1, 2, 3, 5, 8, 13, 21] >>> from md import a as lst, fib as func_fib >>> a ['foo', 'bar', 'baz'] >>> lst # [100, 200, 300] >>> fib [0, 1, 1, 2, 3, 5, 8, 13, 21] >>> func_fib(500) # 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377
Конструкция from <module> import <name> as <alt_name>
позволяет поместить имена непосредственно в область видимости скрипта, но избежать конфликтов с ранее существующими именами
Оператор try
с предложением except ImportError
можно использовать для защиты от неудачных попыток импорта:
>>> try: ... # Существующий модуль, но несуществующий объект ... from md import foo as f ... except ImportError: ... print('Object not found in module') ... # Object not found in module