यदि आपको गुणनखंड में एक अनुभाग से सभी मानों को सरल तरीके से पढ़ने की आवश्यकता है:
आपकी config.propertiesफ़ाइल लेआउट:
[SECTION_NAME]
key1 = value1
key2 = value2
आप कोड:
import configparser
config = configparser.RawConfigParser()
config.read('path_to_config.properties file')
details_dict = dict(config.items('SECTION_NAME'))
यह आपको एक डिक्शनरी देगा जहां कुंजियाँ कॉन्फिग फाइल और उनके संबंधित मानों के समान हैं।
details_dict है :
{'key1':'value1', 'key2':'value2'}
अब की 1 का मान पाने के लिए:
details_dict['key1']
यह सब एक विधि में डालना जो उस खंड को विन्यास फाइल से केवल एक बार पढ़ता है (पहली बार विधि को प्रोग्राम चलाने के दौरान कहा जाता है)।
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
अब उपरोक्त फ़ंक्शन को कॉल करें और आवश्यक कुंजी का मूल्य प्राप्त करें:
config_details = get_config_dict()
key_1_value = config_details['key1']
-------------------------------------------------- -----------
ऊपर उल्लिखित दृष्टिकोण का विस्तार, अनुभाग द्वारा अनुभाग को स्वचालित रूप से पढ़ना और फिर कुंजी नाम के बाद अनुभाग नाम तक पहुंचना।
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
उपयोग करने के लिए:
config_dict = get_config_section()
port = config_dict['DB']['port']
(यहाँ 'DB' कॉन्फिग फ़ाइल में एक सेक्शन नाम है और 'port' सेक्शन 'DB' के अंतर्गत एक कुंजी है।)