#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ # end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read("multisection.ini") SECTIONS = ["wiki", "none"] OPTIONS = ["username", "password", "url", "description"] for section in SECTIONS: has_section = parser.has_section(section) print "%s section exists: %s" % (section, has_section) for candidate in OPTIONS: has_option = parser.has_option(section, candidate) print "%s.%-12s : %s" % (section, candidate, has_option) print
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ #end_pymotw_header import glob from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() candidates = ['does_not_exist.ini', 'also-does-not-exist.ini', 'simple.ini', 'multisection.ini', ] found = parser.read(candidates) missing = set(candidates) - set(found) print 'Found config files:', sorted(found) print 'Missing files :', sorted(missing)
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ #end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read('multisection.ini') for section_name in parser.sections(): print 'Section:', section_name print ' Options:', parser.options(section_name) for name, value in parser.items(section_name): print ' %s = %s' % (name, value) print
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ #end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read('simple.ini') print parser.get('bug_tracker', 'url')
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ #end_pymotw_header import codecs from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() # Open the file with the correct encoding with codecs.open('unicode.ini', 'r', encoding='utf-8') as f: parser.readfp(f) password = parser.get('bug_tracker', 'password') print 'Password:'******'utf-8') print 'Type :', type(password) print 'repr() :', repr(password)
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ # end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read("interpolation.ini") print "Original value :", parser.get("bug_tracker", "url") parser.set("bug_tracker", "port", "9090") print "Altered port value :", parser.get("bug_tracker", "url") print "Without interpolation:", parser.get("bug_tracker", "url", raw=True)
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ #end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read('multisection.ini') print 'Read values:\n' for section in parser.sections(): print section for name, value in parser.items(section): print ' %s = %r' % (name, value) parser.remove_option('bug_tracker', 'password') parser.remove_section('wiki') print '\nModified values:\n' for section in parser.sections(): print section for name, value in parser.items(section): print ' %s = %r' % (name, value)
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ # end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read("interpolation_defaults.ini") print "URL:", parser.get("bug_tracker", "url")
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ #end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read('multisection.ini') for candidate in [ 'wiki', 'bug_tracker', 'dvcs' ]: print '%-12s: %s' % (candidate, parser.has_section(candidate))
#!/usr/bin/env python # encoding: utf-8 # # Copyright (c) 2010 Doug Hellmann. All rights reserved. # """Reading a configuration file. """ # end_pymotw_header from network_programming.ConfigParser import SafeConfigParser parser = SafeConfigParser() parser.read("types.ini") print "Integers:" for name in parser.options("ints"): string_value = parser.get("ints", name) value = parser.getint("ints", name) print " %-12s : %-7r -> %d" % (name, string_value, value) print "\nFloats:" for name in parser.options("floats"): string_value = parser.get("floats", name) value = parser.getfloat("floats", name) print " %-12s : %-7r -> %0.2f" % (name, string_value, value) print "\nBooleans:" for name in parser.options("booleans"): string_value = parser.get("booleans", name) value = parser.getboolean("booleans", name) print " %-12s : %-7r -> %s" % (name, string_value, value)