Argumen Baris Perintah Python

Argumen Baris Perintah Python



Python ialah bahasa peringkat tinggi yang direka untuk melakukan kod umum dan bukan untuk sebarang masalah khusus. Kami boleh menggunakannya untuk tujuan umum seperti membuat laman web menggunakan python atau menganalisis data menggunakan bahasa python ini. Pengaturcaraan 'Python' juga menyediakan argumen baris_perintah. Argumen Baris Perintah ialah hujah yang telah kami berikan pada konsol atau terminal mana-mana sistem pengendalian selepas menyebut nama fail kod bersama dengan sambungan fail. Kita juga boleh mentakrifkannya sebagai, dalam mana-mana program, nilai yang dihantar melalui gesaan arahan yang dikatakan sebagai Argumen Baris Perintah. Dalam panduan ini, kita akan membincangkan hujah baris arahan dalam pengaturcaraan 'Python'.

Kaedah untuk Argumen Baris Perintah dalam Python

Kami akan menerangkan semua kaedah secara terperinci dalam panduan ini dan juga menunjukkan demonstrasi praktikal semua kaedah tersebut.







Contoh # 01: Dengan Kaedah sys.argv

Kami sedang melakukan kod python ini dalam apl 'Spyder'. Kita boleh mengakses pembolehubah dan fungsi baris arahan dengan mengimport sistem. Jadi, kami mengimport 'sys' dan kemudian kami mengisytiharkan dan memulakan pembolehubah 'num' dengan 'len(sys.argv)'. 'argv' akan menjadi senarai nilai rentetan yang merupakan hujah yang akan menjadi baris arahan kami. 'len' mewakili panjang hujah yang diluluskan. Jadi, dalam pembolehubah 'num' bilangan nilai yang diluluskan pada terminal semasa baris arahan disimpan.



Kami juga memaparkan nombor hujah yang diluluskan dengan menggunakan 'cetak'. Di bawah ini, kami meletakkan 'sys.argv[0]' dalam pernyataan cetakan. 'argv' sentiasa memegang nama program atau nama fail kod. Jadi, nama fail yang kami buat akan dipaparkan pada terminal. Selepas ini, kami mencetak hujah-hujah yang dihantar pada terminal. Ia akan mencetak semua nombor yang telah kami lalui sebagai argumen baris arahan pada skrin konsol.



Di bawah ini, kami telah mentakrifkan gelung for dan mengisytiharkan pembolehubah 'a' di sana yang julatnya antara '1' hingga panjang argv yang disimpan dalam 'num'. Cetak semua hujah pada konsol. 'argv[a]' memegang semua argumen baris_perintah. Ia juga memaparkannya pada konsol. Sekarang, kami memulakan 'jumlah' kerana kami ingin mengira jumlah semua nilai yang akan kami luluskan pada masa pelaksanaan pada terminal.





Kami sekali lagi menggunakan gelung 'untuk' dan melepasi julat. Tetapi kali ini, kami mengira jumlah semua nilai yang telah kami hantar pada terminal. Jumlah ini akan disimpan dalam pembolehubah 'jumlah'. Kemudian, kami juga mencetak jumlah semua nilai yang akan kami luluskan pada masa pelaksanaan pada terminal.

import sys
pada satu = sahaja ( sys . argv )
cetak ( 'Jumlah hujah yang diluluskan di sini :' , pada satu )
cetak ( ' \n Nama fail Python:' , sys . argv [ 0 ] )
cetak ( ' \n Hujah yang telah kami lalui:' , tamat = ' ' )
untuk a dalam julat ( 1 , pada satu ) :
cetak ( sys . argv [ a ] , tamat = ' ' )
Jumlah = 0
untuk i dalam julat ( 1 , pada satu ) :
Jumlah + = int ( sys . argv [ i ] )
cetak ( ' \n \n Jumlah hujah yang diluluskan: ' , Jumlah )



Pada terminal, kami mula-mula meletakkan kata kunci 'lari'. Kemudian, letakkan nama fail bersama dengan sambungan yang betul dan hantar argumen baris arahan di sini. Jadi, ia memaparkan semua baris seperti yang telah kami takrifkan dalam kod di atas. Ia mula-mula menjadikan panjang argumen baris arahan kemudian nama fail. Selepas ini, ia memberikan semua hujah baris arahan dan juga menjadikan jumlah kesemuanya.

Contoh # 02: Dengan Kaedah argparse

Sekarang, kami menggunakan kaedah 'argparse' dalam contoh ini. Kami mula-mula mengimport 'argparse'. Jadi, kami akan mengakses pembolehubah dan fungsi ini. Kami memulakan pembolehubah 'data' dan menyimpan baris yang akan kami gunakan dalam kod kami. Selepas ini, kami memulakan 'penghuraikan' dan dalam 'penerangan' kami menghantar pembolehubah 'data' di mana kami telah menyimpan mesej yang ingin kami paparkan dan kami meletakkan semua ini dalam pembolehubah 'my_parser'. Kami juga meletakkan 'parse.args()' di hujungnya.

import argparse

data = 'Kami menggunakan kaedah argparse di sini'

my_parser = argparse. ArgumentParser ( penerangan = data )

my_parser. parse_args ( )

Lihatlah hasilnya di bawah. Apabila kita menghantar '-h' sebagai argumen baris perintah, ia mula-mula memaparkan mesej yang telah kami simpan dalam pembolehubah 'data' dan juga menunjukkan 'argumen pilihan' kerana 'h' ini menunjukkan mesej bantuan. Apabila kita meletakkan '-o' sebagai hujah baris arahan, ia menghasilkan mesej ralat bahawa ia adalah hujah yang tidak dikenali.

Contoh # 03: Dengan Kaedah getopt

Berikut ialah kaedah terakhir yang kami gunakan dalam kod ini. Kami mengimport 'sys' serta 'getopt' dalam kod ini. 'Getopt' ini ialah penghurai yang telah kami gunakan untuk hujah baris arahan. Kemudian, dalam pembolehubah 'argumentList', kami telah melepasi 'sys.argv[1:]' untuk mengalih keluar hujah pertama yang kami hantar dalam baris arahan. Kami memulakan 'my_option' dengan 'hmo:'.

Selepas ini, kami memulakan pembolehubah 'my_long_option'. Kami menggunakan 'cuba' di sini yang akan menyemak ralat. Selepas ini, kami sedang menghuraikan hujah. 'Getopt' menawarkan pilihan pendek dan panjang, bersama-sama dengan pilihan untuk menetapkan nilai. Selepas ini, kami menyemak semua hujah yang akan kami luluskan sebagai hujah baris arahan. Jika hujah baris arahan ialah “-h” atau “–Help”, ia akan mencetak mesej yang diberikan di bawah ini. Jika hujah baris arahan ialah '-m' atau '—My_file', ia akan memaparkan mesej yang ditulis selepas ini.

Selain itu, jika argumen baris arahan ialah '-o' atau '–Output', ia juga memaparkan mesej yang telah kami tulis di sini selepas ini. Jika argumen baris arahan bukan dari semua di atas, ia akan memaparkan mesej ralat kerana kami telah meletakkan 'getopt. ralat' dalam kod.

import atasnya , sys
argumentList = sys . argv [ 1 : ]
my_options = 'malam:'
new_long_options = [ 'Bantuan' , 'Fail_saya' , 'Output='
cubalah :
hujah , nilai = atasnya . atasnya ( argumentList , my_options , new_long_options )
untuk my_Argument , my_Value dalam hujah:
jika my_Argument dalam ( '-h' , '--Tolong' ) :
cetak ( 'Memaparkan Bantuan' )
elif my_Argument dalam ( '-m' , '--Fail_saya' ) :
cetak ( 'Memaparkan nama_fail:' , sys . argv [ 0 ] )
elif my_Argument dalam ( '-O' , '--Pengeluaran' ) :
cetak ( ( 'Mendayakan mod keluaran khas (% s)' ) % ( my_Value ) )
kecuali atasnya . kesilapan sebagai err:
cetak ( str ( silap ) )

Di sini anda melihat bahawa apabila kami meletakkan '-h' sebagai baris arahan ia memaparkan mesej yang sama yang telah kami tulis dalam kod. Apabila kami meletakkan dua argumen baris arahan sebagai '–Help' dan juga '-m', ia memaparkan dua mesej di bawah. Dalam hujah baris arahan '-o', kami juga telah lulus rentetan yang juga dipaparkan dalam mesej.

Kesimpulan

Kami telah menyediakan panduan ini untuk membantu anda mempelajari konsep 'argumen baris arahan' dalam 'Python'. Kami telah meneroka 'hujah baris arahan' dan juga menerangkan tiga kaedah di sini. Kami telah menjelaskan hujah baris arahan bahawa proses menghantar nilai kepada atur cara bersama-sama dengan nama program pada masa pelaksanaan melalui gesaan arahan.