Merhaba
Internetteki kaynaklar hep ingilizce tam anlayamadım. Yanlış anlamadıysam programdaki verileri cfg formatında dosyaya yazmaya yarıyormuş. Nasıl kullanılıyor bu modül?
Teşekkürler
Önce ConfigParser
sınıfından bir örnek oluşturun. Eğer daha önce olan bir dosyayı açmak isterseniz bu örneğin read metodunu kullanın. İçindeki herhangi bir veriye ulaşmak için get metodunu kullanın veya oluşturduğunuz örneği bir liste olarak varsayıp listelerde kullanılan yöntemi kullanın. Veri eklemek için kullanılan yöntem yine liste varsaymak gibi görünüyor. En son herhangi bir dosyaya yazmak için örneğin write metodunu kullanın.
Bölümler ve seçenekler halindeki dosyaları ayrıştırıp işlemeye yarayan kütüphanedir.
[ burası section yani bölüm oluyor ]
burası = option # : 'da olabilir = yerine
eğer ; ile biterse # gibi yorum olarak algılanır.
örnekler;
bir tane simple.ini dosyası oluşturun
içine aşağıdakileri ekleyin.
[bug_tracker]
url = http://localhost:8080/bugs/
username = dhellmann
; You should not store passwords in plain text
; configuration files.
password = SECRET
sonra deneybir.py oluşturun
içine şunları koyun
from configparser import ConfigParser
parser = ConfigParser() #parser örneği oluşturduk
parser.read('simple.ini') #dosyayı okuduk
print(parser.get('bug_tracker', 'url'))#get ile [bug_tracker bölümünden] url seçeneğini aldık
devam ediyoruz örnek iki:
deneyiki.py dosyası oluşturun içine şunları koyun
from configparser import ConfigParser
import glob
parser = ConfigParser()#örnek oluşturduk, configparser için
candidates = ['does_not_exist.ini', 'also-does-not-exist.ini',
'simple.ini', 'multisection.ini']#buradaki listeyi bizim için gerekli olan dosyaların olduğu bir #senaryo düşünün ve eksik olanı bulacağımız işlemler yapacağız.
found = parser.read(candidates)#listeyi okuyoruz ve tabi dosya yolunda bu dosyaların hepsi yok ,o #yüzden okunanları alabildi
missing = set(candidates) - set(found)#hangisi yok onu keşfedeceğiz.set ile önce listeyi küme yaptık ki farkını bulalım.
print('Found config files:', sorted(found))#sıralayarak yazdırdık.
print('Missing files :', sorted(missing))
örnek üç:
multisection.ini dosyası oluşturup içine
[bug_tracker]
url = http://localhost:8080/bugs/
username = dhellmann
password = SECRET
[wiki]
url = http://localhost:8080/wiki/
username = dhellmann
password = SECRET
sonra deneyuc.py dosyas oluşturun:
from configparser import ConfigParser
parser = ConfigParser()
parser.read('multisection.ini')#dosyayı okuduk.
print('Read values:\n')
for section in parser.sections():#parser.sections [köşeli parantez içine denk gelir .ini dosyalarının içinde]
print(section)
for name, value in parser.items(section):#section içindeki özellikler url=www.xxx.com gibi değerlerin üzerinden geçiyoruz(okuyoruz, sözlük gibi) ve bizim için url ve değerini ayrı ayrı almamızı sağlıyor aynı zamanda diğer özelliklerin de(passwor=llk445 gibi).
print(' {} = {!r}'.format(name, value))
parser.remove_option('bug_tracker', 'password')#bug_tracker içinde password'ü sildik
parser.remove_section('wiki')#wiki bölümünü tamamen sildik
print('\nModified values:\n')
for section in parser.sections():#yukarıdaki döngünün aynısını yaparak çıktıyı alıyoruz.
print(section)
for name, value in parser.items(section):
print(' {} = {!r}'.format(name, value))
#bu şimdilik böyle kalsın devam ederiz, zaman buldukça.