Hmm... Wenn man ein eigenes Config-Modul hat darin globals zu vergeben find ich selbst nicht problematisch, denn wenn ein Programm aus mehr als einer Datei besteht ist es am einfachsten einfach in alle Skripte dieses Config-Modul zu importieren, und auf die Konfiguration mittels der Globals des Moduls zuzugreifen.
Was ich sehr viel eher problematisch finde ist die Tatsache dass der Import des Config-Moduls die Konfiguration auslösen soll...
Kleines Beispiel:
a.py
Code: Alles auswählen
import config
if config.definefunk:
def funk():
print "In funk."
main.py
Code: Alles auswählen
import config
# Start Konfiguration.
config.config()
# Rest importieren.
import a
if config.definefunk:
a.funk()
config.py
Code: Alles auswählen
def config():
global definefunk
definefunk = raw_input("Definiere funk in a? [J/N]").lower().startswith("j")
Das ist ungefähr das was der OP will. Was man natürlich anders lösen sollte ist config() von irgendwo aufzurufen. Zum Beispiel indem im config.py-Modul ein Bool gesetzt wird sobald config() einmal gelaufen ist, so dass nicht wieder konfiguriert werden kann.
Aber unabhängig davon, am besten man benutzt etwas was dafür gedacht ist:
http://www.python.org/doc/2.4.2/lib/mod ... arser.html
--- Heiko.