এটি একটি পুরানো বিষয়, তবে সম্পূর্ণতার জন্য আমাদের কনফিগার পার্সার এবং কনফিগার পার্সার অন্তর্ভুক্ত করা উচিত যা যথাক্রমে পাইথন 2 এবং 3 এর স্ট্যান্ডার্ড লাইব্রেরির অংশ। এই মডিউলটি একটি কনফিগারেশন / আইএনআই ফাইল পড়ে এবং লেখায় এবং (অন্তত পাইথন 3 এ) অভিধানের মতো অনেকগুলি আচরণ করে। এটির অতিরিক্ত সুবিধা রয়েছে যে আপনি একাধিক অভিধান আপনার নিজের কনফিগার / আইআই ফাইলের পৃথক বিভাগে সংরক্ষণ করতে পারেন এবং সেগুলি পুনরায় স্মরণ করতে পারেন। খুব সুন্দর!
পাইথন 2.7.x উদাহরণ।
import ConfigParser
config = ConfigParser.ConfigParser()
dict1 = {'key1':'keyinfo', 'key2':'keyinfo2'}
dict2 = {'k1':'hot', 'k2':'cross', 'k3':'buns'}
dict3 = {'x':1, 'y':2, 'z':3}
# make each dictionary a separate section in config
config.add_section('dict1')
for key in dict1.keys():
config.set('dict1', key, dict1[key])
config.add_section('dict2')
for key in dict2.keys():
config.set('dict2', key, dict2[key])
config.add_section('dict3')
for key in dict3.keys():
config.set('dict3', key, dict3[key])
# save config to file
f = open('config.ini', 'w')
config.write(f)
f.close()
# read config from file
config2 = ConfigParser.ConfigParser()
config2.read('config.ini')
dictA = {}
for item in config2.items('dict1'):
dictA[item[0]] = item[1]
dictB = {}
for item in config2.items('dict2'):
dictB[item[0]] = item[1]
dictC = {}
for item in config2.items('dict3'):
dictC[item[0]] = item[1]
print(dictA)
print(dictB)
print(dictC)
পাইথন 3.X উদাহরণ।
import configparser
config = configparser.ConfigParser()
dict1 = {'key1':'keyinfo', 'key2':'keyinfo2'}
dict2 = {'k1':'hot', 'k2':'cross', 'k3':'buns'}
dict3 = {'x':1, 'y':2, 'z':3}
# make each dictionary a separate section in config
config['dict1'] = dict1
config['dict2'] = dict2
config['dict3'] = dict3
# save config to file
f = open('config.ini', 'w')
config.write(f)
f.close()
# read config from file
config2 = configparser.ConfigParser()
config2.read('config.ini')
# ConfigParser objects are a lot like dictionaries, but if you really
# want a dictionary you can ask it to convert a section to a dictionary
dictA = dict(config2['dict1'] )
dictB = dict(config2['dict2'] )
dictC = dict(config2['dict3'])
print(dictA)
print(dictB)
print(dictC)
কনসোল আউটপুট
{'key2': 'keyinfo2', 'key1': 'keyinfo'}
{'k1': 'hot', 'k2': 'cross', 'k3': 'buns'}
{'z': '3', 'y': '2', 'x': '1'}
কনফিগারেশন আইটি
[dict1]
key2 = keyinfo2
key1 = keyinfo
[dict2]
k1 = hot
k2 = cross
k3 = buns
[dict3]
z = 3
y = 2
x = 1