Portál AbcLinuxu, 22. února 2026 05:23
source soubor. Ten
soubor je textak s python kodem, napr.
klic = "hodnota" if klic == "neco": vypnout = 0Existuje neco takoveho?
execfile(), ale vyhnul bych se mu.
Situace je totiž přesně opačná: Shell nezná moduly, takže jediný a ne moc dobrý způsob, jak realizovat modularizaci, tj. něco podobného pythonímu import, je prostě načíst kód z nějakého souboru. Ale v jazycích, které moduly umí, je v 99,5% případů modul to, co chceš.
import config print config.foo...a
from config import * print foo...
Import provede to, ze nad tim souborem udela neco jako source v BASHi. Proste to precte a pokud je to soubor s prikazy Pythonu, tak je normalne provede. A potom muzes normalne ke vsem promennym pristupovat.
Takze pokud mas ten soubor pojmenovany jako config.py, staci napsat vyse zminene prikazy a budes mit vse prirazene a zpristupnene (jak to udelat, kdyz ten soubor nebude mit rozsireni .py, to netusim)
~/.program/config.py, šlo by to např.:
import os, sys
try:
sys.path.insert(0, os.path.join(os.environ['HOME'], '.program'))
import config
sys.path.pop(0)
except ImportError:
# Konfigurák není, tak si vytvoříme výchozí config...
print config.foo...
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.