[python] Import modulů

Radek Machulka radek.machulka na gmail.com
Pátek Květen 28 12:46:19 CEST 2010


Zdravím,

pro většinu projektů volím následující adresářovou strukturu:

projekt/utils - adresář obsahující spouštěné scripty
projekt/modules - adresář s moduly (externí kód relevantní jen k danému 
projektu)
projekt/conf - konfigurační soubory
projekt/data - adresář obsahující výsledky běhu programů

Import externích funkcí z modulů v projekt/modules resim takto:

import sys
sys.path.append("./../modules/")
from modul import funkce

Problém pochopitelně nastane v případě, že script nespouštím z adresáře 
projekt/utils, resp. pokud je os.getcwd() různá od projekt/utils.
Zatím to řeším nastavením pracovního adresáře:

import os
os.chdir(os.path.split(os.path.abspath(__file__))[0])

Každopádně mi to nepřijde rozhodne dvakrát elegantní.
Jak to řešíte vy?

Dík
Radek


Další informace o konferenci Python