Comment on page
✨
Argparse
Argparse ile terminal komutlarını ayrıştırma
- Argüman ekleme işlemi
parser = argparse.ArgumentParser(...)
ile yapılmaktadır. - Parametrelerin kullanımı
argparse.ArgumentParser(description='yok')
şeklindedir.
Parametre | Açıklama |
---|---|
description | Uygulama ile alakalı açıklama metnidir |
Argüman ekleme işlemi
parser.add_argument(...)
ile yapılmaktadır.Parametre | Açıklama |
---|---|
1. parametre | Kısa kullanım komutunu içerir |
2. Parametre | Orjinal kullanım komutunu içerir |
help | -h yazıldığında çıkacak olan yardım metni |
action | Davranışı belirler |
type | Tip bilgisini içerir (int, string ...) |
default | Varsayılan değer |
dest | Verinin aktarılacağı değişken ismi |
nargs | Çoklu veri alma |
required | Parametre girilmezse program çalışmaz |
- 🖤 Terminal üzerindeki komutlar yerine string üzerinden ayrıştırma da yapabiliriz.
- 📢 Genel kullanımda ilk argüman, script yolu yani
__file__
olmalıdır - 💎 Sistem argümanları varsayılan olarak ayrıştırılır
import shlex
arguments = '-rgc -ll 2 -ru CE -ic "yemreak com" "sd" -cm "💫"'
# String listesi üzerinden ayrıştırma
arguments = [__file__] + shlex.split(arguments)
parser.parse_args(arguments)
# Ayrıştırma normalde işlemi system argümanlarına yapılmaktadır
sys.argv = [__file__] + shlex.split(arguments)
parser.parse_args()
Last modified 1mo ago