Передача файла конфигурации в качестве аргумента модулю анализа конфигурацииPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Передача файла конфигурации в качестве аргумента модулю анализа конфигурации

Сообщение Anonymous »

Мой скрипт должен называться вот так:

Код: Выделить всё

# python start.py --config=start.cfg
Итак, у меня есть три файла:

start.py

Код: Выделить всё

import argparse
import options

parser = argparse.ArgumentParser(prog='mystart')
parser.add_argument("-f", "--file", dest="filename",
help="write report to FILE", metavar="FILE")

args = parser.parse_args()
ConfigFile = args.filename

test = options.getTest()

print test
options.py

Код: Выделить всё

from ConfigReader import getConfigValue as getVal

def getTest():
Test = getVal('main', 'test')
return Test
ConfigReader.py

Код: Выделить всё

import os
import ConfigParser

def config():
cfg = ConfigParser.ConfigParser()
for f in ('default.cfg',):
if os.path.exists(f):
cfg.read(f)
return cfg
return None

def getConfigValue(Section, Option):
cfg = config()
if cfg.has_option(Section, Option):
return cfg.get(Section, Option)
else:
return None
Как вы можете видеть, мой файл конфигурации жестко запрограммирован в моем модуле ConfigReader.py.
Как мне теперь передать мой var ConfigFile в мой модуль?

Как вы можете видеть, мой файл конфигурации жестко запрограммирован в моем модуле ConfigReader.py.
Как мне теперь передать мой var ConfigFile в мой модуль?

Как вы можете видеть, мой файл конфигурации жестко закодирован в моем модуле ConfigReader.py.
Как мне теперь передать мой var ConfigFile в мой модуль? p>

Это всего лишь простой пример. У меня есть куча файлов, которые также должны иметь доступ к этой переменной.

Можно ли использовать глобальную переменную? Есть ли другой способ?

Подробнее здесь: https://stackoverflow.com/questions/179 ... rse-module
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»