আপনি কোডের একক লাইনে এটি করতে পারেন।
পাইথন 3, শুরুতে যোগ আপনার কনফিগ ফাইল ডেটাতে একটি জাল বিভাগ হেডার, এবং এটি পাস ইন read_string()
।
from configparser import ConfigParser
parser = ConfigParser()
with open("foo.conf") as stream:
parser.read_string("[top]\n" + stream.read())
আপনি এর itertools.chain()
জন্য একটি বিভাগ শিরোনাম অনুকরণ করতেও ব্যবহার করতে পারেন read_file()
। এটি উপরোক্ত পদ্ধতির চেয়ে মেমরির চেয়ে দক্ষ হতে পারে, যদি আপনার রান-টাইম পরিবেশে একটি বড় কনফিগারেশন ফাইল থাকে তবে এটি সহায়ক হতে পারে।
from configparser import ConfigParser
from itertools import chain
parser = ConfigParser()
with open("foo.conf") as lines:
lines = chain(("[top]",), lines)
parser.read_file(lines)
অজগর 2 এ, আপনার কনফিগার ফাইলের ডেটাতে একটি নকল বিভাগের শিরোলেখ প্রস্তুত করুন, ফলাফলটিকে কোনও StringIO
বস্তুতে মুড়িয়ে দিন এবং এতে পাস করুন readfp()
।
from ConfigParser import ConfigParser
from StringIO import StringIO
parser = ConfigParser()
with open("foo.conf") as stream:
stream = StringIO("[top]\n" + stream.read())
parser.readfp(stream)
এর যে কোনও পদ্ধতির সাথে আপনার কনফিগারেশন সেটিংস পাওয়া যাবে parser.items('top')
।
আপনি পাইথন 3 তে স্ট্রিংআইও ব্যবহার করতে পারেন, সম্ভবত পুরানো এবং নতুন পাইথন উভয় অনুবাদকের সাথে সামঞ্জস্যের জন্য, তবে নোট করুন যে এটি এখন io
প্যাকেজে বাস করে এবং readfp()
এখন অবচয়হীন।
বিকল্পভাবে, আপনি কনফিগার পার্সারের পরিবর্তে একটি টোমল পার্সার ব্যবহার বিবেচনা করতে পারেন ।