Özellikler dosyasındaki bir bölümdeki tüm değerleri basit bir şekilde okumanız gerekiyorsa:
Kişisel config.properties
dosya düzeni:
[SECTION_NAME]
key1 = value1
key2 = value2
Siz kodu:
import configparser
config = configparser.RawConfigParser()
config.read('path_to_config.properties file')
details_dict = dict(config.items('SECTION_NAME'))
Bu, anahtarların yapılandırma dosyasındaki ve karşılık gelen değerleriyle aynı olduğu bir sözlük verecektir.
details_dict
dır-dir :
{'key1':'value1', 'key2':'value2'}
Şimdi key1'in değerini almak için:
details_dict['key1']
Hepsini bu bölümü yapılandırma dosyasından yalnızca bir kez okuyan bir yönteme koymak (yöntem bir program çalıştırılırken ilk kez çağrıldığında).
def get_config_dict():
if not hasattr(get_config_dict, 'config_dict'):
get_config_dict.config_dict = dict(config.items('SECTION_NAME'))
return get_config_dict.config_dict
Şimdi yukarıdaki işlevi çağırın ve gerekli anahtarın değerini alın:
config_details = get_config_dict()
key_1_value = config_details['key1']
-------------------------------------------------- -----------
Yukarıda belirtilen yaklaşımı genişletmek, bölüm bölüm otomatik olarak okumak ve daha sonra bölüm adına ve ardından anahtar adına erişmek.
def get_config_section():
if not hasattr(get_config_section, 'section_dict'):
get_config_section.section_dict = dict()
for section in config.sections():
get_config_section.section_dict[section] =
dict(config.items(section))
return get_config_section.section_dict
Erişmek için:
config_dict = get_config_section()
port = config_dict['DB']['port']
(burada 'DB', yapılandırma dosyasındaki bir bölüm adıdır ve 'port', 'DB' bölümünün altındaki bir anahtardır.)