SORU
28 EKİM 2010, PERŞEMBE


Görüntülü Yardım dosyası herhangi bir bağımsız değişken olmadan çağrıldığında python argparse ile ileti

Bu çok basit olabilir. Argparse komut satırı argümanları/seçenekleri işlemek için kullandığı bir program var varsayalım. 'Yardım' mesajı: . takip edecek Yazdır

./myprogram -h

ya da:

./myprogram --help

Ama, eğer herhangi bir bağımsız değişkeni olmadan komut dosyası çalıştırırsanız, hiçbir işe yaramıyor. Yapmak istediğim şey, bağımsız değişken olmadan çağrıldığında, kullanım mesajı görüntülemek için. Bu nasıl yapılır?

CEVAP
28 EKİM 2010, PERŞEMBE


Bu cevap Steven Bethard on Google groups geliyor. Burada bir Google Hesabı olmadan insanların erişimini kolaylaştırmak için transfer kaydı yapıyorum.

error yöntemi varsayılan davranışı geçersiz kılabilirsiniz:

import argparse
import sys

class MyParser(argparse.ArgumentParser):
    def error(self, message):
        sys.stderr.write('error: %s\n' % message)
        self.print_help()
        sys.exit(2)

parser=MyParser()
parser.add_argument('foo', nargs=' ')
args=parser.parse_args()

Yukarıdaki çözüm error yöntemi tetiklenir her yardım mesajı basılır. Örneğin, test.py --blah --blah geçerli bir seçenek değil eğer çok yardım mesajı yazdırın.

Eğer Eğer herhangi bir argüman komut satırında sağlanan tek yardım mesajı yazdırmak istiyorsanız, o zaman belki bu hala en kolay yoludur:

import argparse
import sys

parser=argparse.ArgumentParser()
parser.add_argument('foo', nargs=' ')
if len(sys.argv)==1:
    parser.print_help()
    sys.exit(1)
args=parser.parse_args()

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AginoEvolutionHD

    AginoEvoluti

    27 AĞUSTOS 2011
  • Break

    Break

    10 Aralık 2005
  • Epic Tutorials for iPhone, iPad and iOS

    Epic Tutoria

    18 EYLÜL 2011