0
как полностью начинающий Мне нужно попросить вас о помощи. Я определил класс Config, который принимает из файла config.ini некоторую информацию и помещает их в переменную. Теперь я определяю class: Connection, в основе которого лежит результат из Config. Я пытался сделать это по-разному, но, наконец, сдался. Может ли кто-нибудь взглянуть?Получение переменной из другого класса
class Config:
def __init__(self,system):
self.config = configparser.ConfigParser()
self.config.read("config.ini")
self.connection_source=self.config.get(system,'Source')
self.system=system
def getsystemSources(self):
return self.connection_source
def getConnection(self,source):
self.source=source
self.connection_string=self.config.get('CONNECTION',self.system+'_'+source+'_'+'connectstring') ## Connection
self.connection_user=self.config.get('CONNECTION',self.system+'_'+source+'_'+'user') ## Connection user
self.connection_password=self.config.get('CONNECTION',self.system+'_'+source+'_'+'password') ## Connection pass
class Connection(Config):
def __init__ (self):
self.connection_string=Config.connection_string
self.connection_user=Config.connection_user
self.connection_password=Config.connection_user
self.connection_source=Config.connection_source
def conn_function(self):
print (self.connection_string)
print (self.connection_user)
print (self.connection_password)
emp1 = Config('Windows')
value=emp1.getsystemSources()
print (value)
emp2 = Connection() -> how to run it ?
Привет, я установил на мой вопрос был класс Connection (IngesConfig) вместо класса Connection (Config) :. Unfornatelly ваш soution не работает. У меня возникла ошибка: у объекта Config нет атрибута: строка подключения. – bazyl
хорошо, потому что вы не инициализируете эти переменные. В вашем Config init вы не объявляете/не назначаете эти значения. вам нужно запустить 'emp1.getConnection()' сначала взглядами, чтобы инициализировать эти – dhdavvie
отлично, вы правы. благодаря! – bazyl