Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah Saya Meluluskan Senarai sebagai Argumen kepada Program Baris Perintah Menggunakan argparse?

Bagaimanakah Saya Meluluskan Senarai sebagai Argumen kepada Program Baris Perintah Menggunakan argparse?

DDD
DDDasal
2024-10-28 05:30:021066semak imbas

How Do I Pass a List as an Argument to a Command-Line Program Using argparse?

Meluluskan Senarai sebagai Argumen dalam argparse

Apabila cuba menghantar senarai sebagai hujah kepada program baris arahan menggunakan argparse, adalah penting untuk memahami pilihan yang tersedia untuk mewakili senarai dalam parser.

Tidak Disyorkan: Menggunakan type=list

Elakkan menggunakan type=list dengan argparse kerana ia boleh menyebabkan salah keputusan. Ia akan mengembalikan senarai senarai, bukan satu senarai yang mengandungi elemen yang dikehendaki.

Gunakan nargs untuk Argumen yang Diperlukan

Parameter nargs membolehkan anda menentukan bilangan hujah pilihan yang diterima. Untuk menghantar senarai sebagai argumen yang diperlukan, gunakan:

<code class="python">parser.add_argument('-l', '--list', nargs='+', help='Set flag', required=True)</code>

Gunakan action='append' untuk Argumen Pilihan

Untuk argumen pilihan, gunakan action='append ' untuk membenarkan menyediakan berbilang kejadian hujah.

<code class="python">parser.add_argument('-l', '--list', action='append', help='Set flag')</code>

Sintaks untuk Menggunakan Pilihan Ini

Untuk nargs, hujah hendaklah disediakan bersama tanpa ruang, seperti :

<code class="bash">python test.py -l 12345678</code>

Untuk action='append', hujah hendaklah disediakan beberapa kali, seperti:

<code class="bash">python test.py -l 1234 -l 5678</code>

Pertimbangan Tambahan

  • Jangan gunakan petikan apabila menghantar argumen untuk argparse pada baris arahan.
  • Jika anda mahu elemen senarai ditukar jenis (cth., kepada integer), gunakan type=int dalam nargs tetapan.
  • nargs dengan atau * membenarkan 1 atau lebih argumen, masing-masing, dan ? membenarkan 0 atau 1 hujah. Untuk bilangan hujah tertentu, berikan integer kepada nargs.

Atas ialah kandungan terperinci Bagaimanakah Saya Meluluskan Senarai sebagai Argumen kepada Program Baris Perintah Menggunakan argparse?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn