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
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()
Nasıl Python betiği tek başına HERHANG...
Nasıl herhangi bir komut dosyası düzen...
Bir yineleyici değişken olmadan dizi d...
Argparse Python: Nasıl yardım metindek...
Sadece Python herhangi bir değer atama...