0

次の例では、から値を取得できます[section1]。他のセクション、またはより多くのセクションでこれを行うにはどうすればよいですか?

store.config

[section1]
field_a = hello
field_b = galaxy

[section2]
field_a = hello
field_b = galaxy

[section3]
field_a = hello
field_b = galaxy

mainfile.py

from ConfigParser import SafeConfigParser

class Main:

   def get_properties(self, section, *variables):
        cfgFile = 'c:\store.config'
        parser = SafeConfigParser()
        parser.read(cfgFile)
        properties= variables
        return {
            variable: parser.get(section,variable) for variable in properties
        }

   def run_me(self):
        config_vars= self.get_properties('section1','field_a')
        print config_vars

op=Main()
op.run_me()

現在の出力:

{'section1': 'field_a'}

これは、 Using var from from from function A to function Bという投稿で与えられたソリューションを改善するのに役立ちます。

4

2 に答える 2

1

sectionsメソッドを探していると思いますSafeConfigParser['section1', 'section2', 'section3']あなたの例では、反復できる を返す必要があります。

于 2012-10-04T18:38:45.437 に答える
0

解決:

def run_me(self):
    config_vars= self.get_properties('services','package_install','package_info')
    convig_vars_2 = self.get_properties('network','proxy_server','proxy_user')

単純にそのとおりです。

于 2012-10-11T11:53:30.480 に答える