2015-03-14 2 views
0

Я новичок в python. У меня есть некоторые скрипты python, где нужно импортировать различные модули python.python импортирует все модули в файл python, который мы можем импортировать в другой файл?

Можно ли

  1. импорта все модули в одном файле, скажем modules.py
  2. и импортировать этот modules.py для всех скриптов, так что нет необходимости импортировать модули для каждого сценария?

Заранее спасибо

+0

Одним словом, да. – wim

ответ

0

В mymodules:

import module1 
import module2 

в приложении:

from mymodules import * 

Но это на самом деле стоит? Состояние дзен python:

Явный лучше, чем неявный.

Копирование некоторых строк в верхней части файла на самом деле не является большой проблемой.

+0

Спасибо! это сработало. – Rameswar

0

Есть по крайней мере 4 способа импорта модуля:

import X, imports the module X: this way you can use X.whatever to refer to things defined in module X. 

from X import *, imports the module X: this way you can simply use a plain name to refer to things defined in module X. 

from X import x, y, z: you can now use x and y and z in the current name space. 

X = __import__(‘X’) works like import X but this time the module name is a string. Use it it you don't know the module name before execution. 

Подумайте о пространстве имен в качестве словаря структуры Python, где ключи словаря представляют имена и словарь ценность самого объекта. Используя импорт, вы можете назвать модуль внутри вашего пространства имен.

Это означает, что вы можете полностью импортировать модули внутри сценария (имя импортера os что-то), а затем импортировать «импортер», и все будет находиться внутри вашего пространства имен. Это хорошая идея? Вероятно, нет, потому что обычно существует одно и то же имя (метод, функция или что-то еще) внутри разных модулей, и если это произойдет, возникает двусмысленность.