Вы должны поставить вам код, который загружает конфигурацию в функцию , Затем вы должны передать ему имя файла и вернуть все данные конфигурации.
Итак, начнем с:
def read_configuration_from_file(filename):
config_parser = ConfigParser.ConfigParser()
config_parser.read(filename)
После того, как вы читаете информацию из config_parser, вы должны выяснить, как вернуть конфигурацию. Есть много вариантов. Вы можете вернуть словарь или создать собственный объект, содержащий конфигурацию.
Вариант 1 (словарь):
return {'first_name': first_name, 'last_name': last_name}
Вариант 2 (конфигурация класса данных):
class ConfigurationData(object):
def __init__(self, first_name, last_name):
self.first_name = first_name
self.last_name = last_name
, а затем вы просто return ConfigurationData(first_name=first_name, last_name=last_name)
.
Вы также можете объединить все это и сделать чтения функции часть класса:
class ConfigurationData(object):
def __init__(self, first_name, last_name):
self.first_name = first_name
self.last_name = last_name
@staticmethod
def read_configuration_from_file(filename):
config_parser = ConfigParser.ConfigParser()
config_parser.read(filename)
...
return ConfigurationData(first_name=first_name, last_name=last_name)
Используйте Getopt свой стандартный пакет библиотеки для вашего требования. –
@Prashant Нет ничего плохого в argparse, который Arijit уже использует. – zvone
@Arijit Какая часть вызывает у вас неприятности? Как получить конфигурационный файл из ввода и иметь значение по умолчанию? Или как передать переменную в ConfigParser? – zvone