cari
Rumahpembangunan bahagian belakangTutorial PythonMenggunakan Python argparse: Cara mengendalikan hujah baris arahan

    1. Pengenalan

    argparse ialah pakej penghuraian parameter baris perintah untuk Python penggunaan utama adalah dalam Masukkan parameter yang anda ingin ubah suai pada baris arahan.

    2. Rangka kerja biasa untuk penggunaan argparse

    import argparse
    
    def get_parser():
    
        # argparse.ArgumentParser生成argparse对象 description为描述信息,当在命令行输入需要显示帮助信息时,会显示
    
        parser = argparse.ArgumentParser(description="pytorch unet training")
    
        # 路径参数设置 help为参数的帮助信息
    
        parser.add_argument("--data_path", default="./", help="DRIVE root")
    
        # 预测类别数量 type如果不指定需要输入的是str类型
    
        parser.add_argument("--num_classes", default=1, type=int)
    
        # 指定设备使用
    
        parser.add_argument("--device", default="cuda", help="training device")
    
        # 指定batch size大小 "-b", "--batch_size"表示两个都可以在命令行使用
    
        parser.add_argument("-b", "--batch_size", default=4, type=int)
    
        return parser
    
    if __name__ =='__main__':
    
        parser = get_parser()
    
        args = parser.parse_args()
    
        print(args)

    Seperti yang dinyatakan di atas, get_parser() ialah beberapa kaedah penggunaan yang diperkenalkan dalam artikel ini Fail python ini dipanggil python_argparse_test1.py, di mana

    parser = argparse.ArgumentParser(description="pytorch unet training") digunakan untuk mencipta objek parser

    add_argument() digunakan untuk menambah parameter

    args = parse_args () dalam parser.parse_args() Dapatkan parameter yang dihuraikan

    1 Dapatkan senarai parameter

    Apabila python python_argparse_test1.py dimasukkan pada baris arahan, cetak parameter yang diperolehi oleh args dan dapatkan. :

    Namespace(batch_size=4 , data_path='./', device='cuda', num_classes=1)

    Menunjukkan senarai parameter yang dihuraikan oleh penghurai parameter ini

    2. Dapatkan maklumat bantuan

    Masukkan python python_argparse_test1.py -h atau python python_argparse_test1.py --help untuk memaparkan maklumat, penggunaan menunjukkan penggunaannya, latihan pytorch unet ialah penerangan semasa mencipta objek dan di bawah ialah maklumat dan penggunaan setiap parameter

    Menggunakan Python argparse: Cara mengendalikan hujah baris arahan

    3 Ubah suai parameter pada baris arahan

    import argparse
    
    def get_parser():
    
        # argparse.ArgumentParser生成argparse对象 description为描述信息,当在命令行输入需要显示帮助信息时,会显示
    
        parser = argparse.ArgumentParser(description="pytorch unet training")
    
        # 路径参数设置 help为参数的帮助信息 default为默认参数
    
        parser.add_argument("--data_path", default="./", help="DRIVE root")
    
        # 预测类别数量 type如果不指定需要输入的是str类型
    
        parser.add_argument("--num_classes", default=1, type=int)
    
        # 指定设备使用
    
        parser.add_argument("--device", default="cuda", help="training device")
    
        # 指定batch size大小 "-b", "--batch_size"表示两个都可以在命令行使用
    
        parser.add_argument("-b", "--batch_size", default=4, type=int)
    
        return parser
    
    if __name__ =='__main__':
    
        parser = get_parser()
    
        args = parser.parse_args()
    
        print("data_path: ",args.data_path)
    
        print("num_classes: ", args.num_classes)

    Input baris arahan: python python_argparse_test1.py -- data_path Desktop --num_classer 4, hasilnya adalah seperti berikut:

    data_path: Desktop

    num_classes: 4

    Anda boleh melihat bahawa parameter telah diubah suai melalui baris arahan

    4. Penggunaan '_' dan "__"

    if __name__ =='__main__':
    
        parser = get_parser()
    
        args = parser.parse_args()
    
        print("-b: ",args.b)
    
        print("--batch_size: ", args.batch_size)

    Masukkan python python_argparse_test1.py -b 10 --batch_size 20 pada baris arahan, dan ralat akan dilaporkan :

    Menggunakan Python argparse: Cara mengendalikan hujah baris arahan

    Ini kerana apabila '_' dan ' Apabila __' wujud pada masa yang sama, sistem lalai kepada nama parameter

    kod di atas kepada:

    if __name__ =='__main__':
    
        parser = get_parser()
    
        args = parser.parse_args()
    
        print("--batch_size: ",args.batch_size)

    tetapi baris arahan tidak akan terjejas Teruskan melaksanakan perintah python python_argparse_test1.py -b 10 Dapatkan:

    --batch_size: 10

    5. Penggunaan jenis

    jenis akan memaksa aksara baris arahan input ke dalam jenis jenis

    if __name__ =='__main__':
    
        parser = get_parser()
    
        args = parser.parse_args()
    
        print("--batch_size type: ",type(args.batch_size))

    Input baris arahan: python python_argparse_test1.py --batch_size '10' mendapat:

    --batch_size type:

    6.required: use Untuk menunjukkan sama ada parameter ini perlu disediakan

    parser.add_argument("--num_classes", default=1, type=int, required=True)

    Jika anda memasukkan perintah python python_argparse_test1.py

    ini akan melaporkan ralat yang menunjukkan bahawa parameter memang diperlukan

    python_argparse_test1.py: ralat: argumen berikut diperlukan: --num_classes

    7.parameter pemilihan pilihan

    parser.add_argument('-arch', required=True, choices=['alexnet', 'vgg'])

    Jika anda menjalankan arahan: python python_argparse_test1.py -arch cnn

    Ini akan melaporkan ralat

    python_argparse_test1. py: ralat: hujah -arch: pilihan tidak sah: 'cnn' (pilih daripada 'alexnet', 'vgg')

    Atas ialah kandungan terperinci Menggunakan Python argparse: Cara mengendalikan hujah baris arahan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan
    Artikel ini dikembalikan pada:亿速云. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
    Python: Permainan, GUI, dan banyak lagiPython: Permainan, GUI, dan banyak lagiApr 13, 2025 am 12:14 AM

    Python cemerlang dalam permainan dan pembangunan GUI. 1) Pembangunan permainan menggunakan pygame, menyediakan lukisan, audio dan fungsi lain, yang sesuai untuk membuat permainan 2D. 2) Pembangunan GUI boleh memilih tkinter atau pyqt. TKInter adalah mudah dan mudah digunakan, PYQT mempunyai fungsi yang kaya dan sesuai untuk pembangunan profesional.

    Python vs C: Aplikasi dan kes penggunaan dibandingkanPython vs C: Aplikasi dan kes penggunaan dibandingkanApr 12, 2025 am 12:01 AM

    Python sesuai untuk sains data, pembangunan web dan tugas automasi, manakala C sesuai untuk pengaturcaraan sistem, pembangunan permainan dan sistem tertanam. Python terkenal dengan kesederhanaan dan ekosistem yang kuat, manakala C dikenali dengan keupayaan kawalan dan keupayaan kawalan yang mendasari.

    Rancangan Python 2 jam: Pendekatan yang realistikRancangan Python 2 jam: Pendekatan yang realistikApr 11, 2025 am 12:04 AM

    Anda boleh mempelajari konsep pengaturcaraan asas dan kemahiran Python dalam masa 2 jam. 1. Belajar Pembolehubah dan Jenis Data, 2.

    Python: meneroka aplikasi utamanyaPython: meneroka aplikasi utamanyaApr 10, 2025 am 09:41 AM

    Python digunakan secara meluas dalam bidang pembangunan web, sains data, pembelajaran mesin, automasi dan skrip. 1) Dalam pembangunan web, kerangka Django dan Flask memudahkan proses pembangunan. 2) Dalam bidang sains data dan pembelajaran mesin, numpy, panda, scikit-learn dan perpustakaan tensorflow memberikan sokongan yang kuat. 3) Dari segi automasi dan skrip, Python sesuai untuk tugas -tugas seperti ujian automatik dan pengurusan sistem.

    Berapa banyak python yang boleh anda pelajari dalam 2 jam?Berapa banyak python yang boleh anda pelajari dalam 2 jam?Apr 09, 2025 pm 04:33 PM

    Anda boleh mempelajari asas -asas Python dalam masa dua jam. 1. Belajar pembolehubah dan jenis data, 2. Struktur kawalan induk seperti jika pernyataan dan gelung, 3 memahami definisi dan penggunaan fungsi. Ini akan membantu anda mula menulis program python mudah.

    Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam Kaedah Projek dan Masalah Dikemukakan Dalam masa 10 Jam?Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam Kaedah Projek dan Masalah Dikemukakan Dalam masa 10 Jam?Apr 02, 2025 am 07:18 AM

    Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...

    Bagaimana untuk mengelakkan dikesan oleh penyemak imbas apabila menggunakan fiddler di mana-mana untuk membaca lelaki-dalam-tengah?Bagaimana untuk mengelakkan dikesan oleh penyemak imbas apabila menggunakan fiddler di mana-mana untuk membaca lelaki-dalam-tengah?Apr 02, 2025 am 07:15 AM

    Cara mengelakkan dikesan semasa menggunakan fiddlerevery di mana untuk bacaan lelaki-dalam-pertengahan apabila anda menggunakan fiddlerevery di mana ...

    Apa yang perlu saya lakukan jika modul '__builtin__' tidak dijumpai apabila memuatkan fail acar di Python 3.6?Apa yang perlu saya lakukan jika modul '__builtin__' tidak dijumpai apabila memuatkan fail acar di Python 3.6?Apr 02, 2025 am 07:12 AM

    Memuatkan Fail Pickle di Python 3.6 Kesalahan Laporan Alam Sekitar: ModulenotFoundError: Nomodulenamed ...

    See all articles

    Alat AI Hot

    Undresser.AI Undress

    Undresser.AI Undress

    Apl berkuasa AI untuk mencipta foto bogel yang realistik

    AI Clothes Remover

    AI Clothes Remover

    Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

    Undress AI Tool

    Undress AI Tool

    Gambar buka pakaian secara percuma

    Clothoff.io

    Clothoff.io

    Penyingkiran pakaian AI

    AI Hentai Generator

    AI Hentai Generator

    Menjana ai hentai secara percuma.

    Artikel Panas

    R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
    3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Tetapan grafik terbaik
    3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
    3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25: Cara Membuka Segala -galanya Di Myrise
    4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

    Alat panas

    VSCode Windows 64-bit Muat Turun

    VSCode Windows 64-bit Muat Turun

    Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

    SublimeText3 Linux versi baharu

    SublimeText3 Linux versi baharu

    SublimeText3 Linux versi terkini

    ZendStudio 13.5.1 Mac

    ZendStudio 13.5.1 Mac

    Persekitaran pembangunan bersepadu PHP yang berkuasa

    SublimeText3 versi Inggeris

    SublimeText3 versi Inggeris

    Disyorkan: Versi Win, menyokong gesaan kod!

    Muat turun versi mac editor Atom

    Muat turun versi mac editor Atom

    Editor sumber terbuka yang paling popular