Bazı Python'ları algoritmalarla ilgili temel bilgilere sahip ilk programlama dilimi olarak öğrenmeye ciddi bir girişimde bulundum. Herkesin başlamanın en iyi yolunun yararlı bir şey bulmak olduğunu tavsiye ettiği için, depolarımı yönetmek için küçük bir betik yapmaya karar verdim.python - acemi - bir programda optparse'ı entegre etme
Temel şeyler: - Ben, veri oldukça basittir ekleme/kaldırma/dosya ayrıştırma iken depoları
Ekle/Kaldır ve değiştirme - Geçerli YUM depoları değiştirme önceliğini -/devre dışı bırak YUM depoları etkinleştirme 'optparse' ile tek bir şeyle mücadele (çoğunlukla bilgi eksikliği) mücadele ... Mevcut mevcut depoları listeleyen bir seçenek (-l) eklemek istiyorum ... Bunu yapan basit bir işlev yaptım iş (çok ayrıntılı bir şey değil), ama optparse'de '-l' ile 'bağlayamıyorum'. Bunu nasıl yapacaklarına dair örnekler/öneriler sunabilir mi?
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import sys
import optparse
import ConfigParse
repo_file = "/home/nmarques/my_repos.repo"
parser = optparse.OptionParser()
parser.add_option("-e", dest="repository", help="Enable YUM repository")
parser.add_option("-d", dest="repository", help="Disable YUM repository")
parser.add_option("-l", dest="list", help="Display list of repositories", action="store_true")
(options, args) = parser.parse_args()
def list_my_repos()
# check if repository file exists, read repositories, print and exit
if os.path.exists(repo_file):
config = ConfigParser.RawConfigParser()
config.read(repo_file)
print "Found the following YUM repositories on " + os.path.basename(repo_file) + ":"
for i in config.sections():
print i
sys.exit(0)
# otherwise exit with code 4
else:
print "Main repository configuration (" + repo_file +") file not found!"
sys.exit(4)
list_my_repos()
herhangi bir öneriniz (dokümanlar, örnekler) geliştirmek için en bekliyoruz:
akım komut dosyası aşağıdaki gibi bir şeydir. Ana hedef bir kez daha, script.py -l
'u çalıştırdığımda list_my_repos()
çalıştırabilir.
Mümkün olduğunda 'argparse 'kullanmalısınız -' Optparse modülü kullanımdan kaldırılmıştır ve daha fazla geliştirilmeyecektir; geliştirme argparse modülü ile devam edecek.' – Daenyth