chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何讓Python程序參數(shù)輸入更像Linux命令

自然語(yǔ)言處理愛好者 ? 來源:自然語(yǔ)言處理愛好者 ? 作者:菊子皮 ? 2020-12-28 14:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

背景

最近一直訓(xùn)練模型,進(jìn)行模型調(diào)參比較,但是隨著模型參數(shù)多起來了,想獲得不同參數(shù)模型結(jié)果也越來越麻煩??纯辞拜呉约癵ithub上開源項(xiàng)目的代碼后,感覺這個(gè)感覺學(xué)到了很多。讓你的python程序輸入?yún)?shù)更像Linux那樣輸入,之前使用sys.argv,看到這個(gè)之后感覺太low了。這個(gè)就是 Python 標(biāo)準(zhǔn)庫(kù)的一部分:Argparse[1]。那么下面讓我們看看他是多么方便。

1 入門操作

由于這個(gè)包是Python標(biāo)準(zhǔn)庫(kù)中的一部分,所以就不用安裝了,直接使用即可。下面結(jié)合文章argparse基本用法[2]和自己的理解書寫如下程序:

pIYBAF_ped-AEWh1AABVgwZNyw0775.jpg

運(yùn)行方式:linux系統(tǒng)使用比較多的還是命令,這里我也在終端里運(yùn)行程序,如下是使用默認(rèn)參數(shù)運(yùn)行:

01c0a8a6-4693-11eb-8b86-12bb97331649.png

無參數(shù)運(yùn)行

有參運(yùn)行如下:

01ecac30-4693-11eb-8b86-12bb97331649.png

有參運(yùn)行

看起來是不是挺有意思的。在上面的代碼中,使用argparse.ArgumentParser構(gòu)建一個(gè)參數(shù)解析器,其實(shí)也就是創(chuàng)建一個(gè)相關(guān)對(duì)象,description描述了這個(gè)解析器,在命令行中使用-h(--help)命令就可以看到,如下:

022a0364-4693-11eb-8b86-12bb97331649.png

幫助文檔

是不是很清晰。

使用這個(gè)參數(shù)解析器得有一些我們需要的參數(shù),那么就使用parser.add_argument()方法去定義一些。上面的例子就是增加了兩個(gè)參數(shù):name, job。其中'-n'、'--name'都表示一個(gè)參數(shù),而default是運(yùn)行程序時(shí)不輸入對(duì)應(yīng)參數(shù)值所啟用的值。現(xiàn)在相信你對(duì)這個(gè)有一定的了解了。下面我們?cè)偕钊胍幌隆?/p>

2 挖掘argparse更多功能

當(dāng)然,上面的內(nèi)容能夠應(yīng)付日常中一些任務(wù)。了解更多的內(nèi)容,也會(huì)讓我們事半功倍。下面的內(nèi)容參考了argparse簡(jiǎn)要用法總結(jié)[3]部分內(nèi)容,特此感謝。主要介紹parser.add_argument()中的其他參數(shù),default就不再介紹了。

2.1 required:表示這個(gè)參數(shù)是否一定需要設(shè)置

如果設(shè)置了required=True,則在實(shí)際運(yùn)行的時(shí)候不設(shè)置該參數(shù)將報(bào)錯(cuò),在上面的程序上添加如下代碼:

pIYBAF_pefKASLszAAANl8Zh6lU452.jpg

當(dāng)不輸入值時(shí),則有:

02ad7dd4-4693-11eb-8b86-12bb97331649.png

必要參數(shù)

2.2 type: 參數(shù)類型

命令參數(shù)是傳給其他功能模型使用,不同的功能模型則需要不同類型的數(shù)據(jù)輸入,可以通過設(shè)置type直接將輸入的數(shù)據(jù)轉(zhuǎn)換成對(duì)應(yīng)類型的數(shù)據(jù)(前提輸入的數(shù)據(jù)格式就滿足轉(zhuǎn)換要求),修改need參數(shù)的代碼如下:

pIYBAF_pegSAJLLWAAAPsdueYo4869.jpg

運(yùn)行查看:

02d5282a-4693-11eb-8b86-12bb97331649.png

指定參數(shù)類型

2.3 choices:參數(shù)值只能從幾個(gè)選項(xiàng)里面選擇

有時(shí)為了更加人性化提示用戶使用,可以提升用戶輸入哪些值,慢慢地感覺到了Linux的味道了?,F(xiàn)在我們修改need參數(shù)的代碼如下:

pIYBAF_pehWAT7mCAAAVEW6XWcU234.jpg

使用-h命令查看修改后的樣子:

02feb8c0-4693-11eb-8b86-12bb97331649.png

幫助命令

可以看到,need參數(shù)的選擇項(xiàng)。具體效果,朋友們可以自行試試,這里不費(fèi)篇幅展示了,以下是輸入選擇范圍外的結(jié)果。

0353e5a2-4693-11eb-8b86-12bb97331649.png

選擇范圍外結(jié)果

2.4 dest:修改程序內(nèi)部獲取值方法

在命令行中輸入的命令是-ne等形式把參數(shù)傳入到程序,程序可通過其他屬性獲取對(duì)應(yīng)參數(shù)值,就是dest,修改need參數(shù)如下:

o4YBAF_peimAMe9WAAAYOARjIWo842.jpg

運(yùn)行:

039cc11e-4693-11eb-8b86-12bb97331649.png

獲取真實(shí)值

上面還修改打印語(yǔ)句為:

3 總結(jié)

argparse是一個(gè)全面的參數(shù)處理庫(kù),功能比較強(qiáng)大,內(nèi)容也比較多,暫時(shí)就介紹這么多吧。更多實(shí)際需要的功能,我們就根據(jù)需要查看官方文檔以及網(wǎng)上的其他資料吧。

參考資料

[1]Argparse: https://docs.python.org/zh-cn/3.7/howto/argparse.html

[2]argparse基本用法: https://blog.csdn.net/yy_diego/article/details/82851661

[3]argparse簡(jiǎn)要用法總結(jié): http://vra.github.io/2017/12/02/argparse-usage/

責(zé)任編輯:xj

原文標(biāo)題:讓Python程序參數(shù)輸入更像Linux命令——argparse

文章出處:【微信公眾號(hào):自然語(yǔ)言處理愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11681

    瀏覽量

    218581
  • python
    +關(guān)注

    關(guān)注

    57

    文章

    4867

    瀏覽量

    89804

原文標(biāo)題:讓Python程序參數(shù)輸入更像Linux命令——argparse

文章出處:【微信號(hào):NLP_lover,微信公眾號(hào):自然語(yǔ)言處理愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux 下開發(fā)嵌入式必備命令速查表

    管理等環(huán)節(jié)輕松應(yīng)對(duì)各種問題。今天,我們整理了一份Linux下嵌入式開發(fā)必備命令速查表,你一篇文章就能快速查閱。一、文件與目錄管理命令在嵌入式開發(fā)中,你經(jīng)常需要操作
    的頭像 發(fā)表于 01-19 09:06 ?417次閱讀
    <b class='flag-5'>Linux</b> 下開發(fā)嵌入式必備<b class='flag-5'>命令</b>速查表

    shell基本介紹及常用命令之shell基本介紹

    的shell命令Linux命令一般由三部分組成:Command [option] [parameter]。說明:1.[]部分中的內(nèi)容是可選項(xiàng);2.命令,選項(xiàng),
    發(fā)表于 09-28 09:05

    測(cè)試工程師都在用的Linux命令清單(建議收藏)

    作為一名工程師,熟練掌握Linux命令是基本功中的基本功。無論是日常工作中的系統(tǒng)維護(hù),還是面試時(shí)的技術(shù)考核,Linux命令都是繞不開的核心技能。本文將從實(shí)戰(zhàn)角度出發(fā),系統(tǒng)梳理工程師必須
    的頭像 發(fā)表于 08-08 10:06 ?636次閱讀
    測(cè)試工程師都在用的<b class='flag-5'>Linux</b><b class='flag-5'>命令</b>清單(建議收藏)

    Linux內(nèi)核參數(shù)調(diào)優(yōu)方案

    在高并發(fā)微服務(wù)環(huán)境中,網(wǎng)絡(luò)性能往往成為K8s集群的瓶頸。本文將深入探討如何通過精細(xì)化的Linux內(nèi)核參數(shù)調(diào)優(yōu),你的K8s節(jié)點(diǎn)網(wǎng)絡(luò)性能提升30%以上。
    的頭像 發(fā)表于 08-06 17:50 ?851次閱讀

    Linux基礎(chǔ)命令which詳解

    Linux系統(tǒng)中,which命令用于查找并顯示指定命令的可執(zhí)行文件路徑。這對(duì)于系統(tǒng)管理員和開發(fā)人員來說是一個(gè)非常有用的工具,可以幫助定位命令所在的位置,確認(rèn)
    的頭像 發(fā)表于 07-29 17:58 ?756次閱讀

    linux系統(tǒng)awk特殊字符命令詳解

    Linux系統(tǒng)中,awk?是一種非常強(qiáng)大的文本處理工具,能夠?qū)ξ谋緮?shù)據(jù)進(jìn)行分析、格式化和篩選。利用其內(nèi)置的特殊字符和操作符,用戶可以實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)處理任務(wù)。以下對(duì)一些常見的awk特殊字符和操作符
    的頭像 發(fā)表于 07-28 16:38 ?535次閱讀

    一文掌握Linux命令

    作為一名運(yùn)維工程師,熟練掌握Linux命令是基本功中的基本功。無論是日常工作中的系統(tǒng)維護(hù),還是面試時(shí)的技術(shù)考核,Linux命令都是繞不開的核心技能。本文將從實(shí)戰(zhàn)角度出發(fā),系統(tǒng)梳理運(yùn)維工
    的頭像 發(fā)表于 07-22 15:23 ?532次閱讀

    linux虛擬環(huán)境中調(diào)用Linux 版matlab編譯的python庫(kù)時(shí)出錯(cuò)

    各位大神,能否幫忙解決以下問題,不勝感激。 問題描述:使用linux版的matlab2018b使用mcc -v -W python:CAO_python -T link:lib ... -d
    發(fā)表于 07-18 10:40

    allegro軟件走線命令參數(shù)不顯示如何解決

    在PCB設(shè)計(jì)中,走線命令是頻繁使用的功能之一。執(zhí)行走線命令后,通常會(huì)在Options面板中顯示線寬、層、角度等設(shè)置選項(xiàng),用于調(diào)整走線參數(shù)。然而,有時(shí)執(zhí)行走線命令后,Options面板中
    的頭像 發(fā)表于 06-05 09:30 ?1794次閱讀
    allegro軟件走線<b class='flag-5'>命令</b>下<b class='flag-5'>參數(shù)</b>不顯示如何解決

    Linux常用命令大全

    Linux常用命令是指在Linux操作系統(tǒng)中廣泛使用的命令工具,這些命令工具可以完成各種不同的任務(wù),如管理文件和目錄、操作進(jìn)程、網(wǎng)絡(luò)通信、軟
    的頭像 發(fā)表于 05-03 18:08 ?1733次閱讀

    零基礎(chǔ)入門:如何在樹莓派上編寫和運(yùn)行Python程序

    是一種非常有用的編程語(yǔ)言,其語(yǔ)法易于閱讀,允許程序員使用比匯編、C或Java等語(yǔ)言更少的代碼行。Python編程語(yǔ)言最初實(shí)際上是作為Linux的腳本語(yǔ)言而開發(fā)的。Py
    的頭像 發(fā)表于 03-25 09:27 ?1736次閱讀
    零基礎(chǔ)入門:如何在樹莓派上編寫和運(yùn)行<b class='flag-5'>Python</b><b class='flag-5'>程序</b>?

    Linux常用命令行總結(jié)

    學(xué)習(xí)了一段時(shí)間的linux之后,開始著手基本命令的學(xué)習(xí),這里主要記錄一些學(xué)習(xí)過程中重要的知識(shí)點(diǎn)供以后查閱。
    的頭像 發(fā)表于 03-03 10:40 ?902次閱讀
    <b class='flag-5'>Linux</b>常用<b class='flag-5'>命令</b>行總結(jié)

    Linux系統(tǒng)中最重要的三個(gè)命令

    Linux三劍客是Linux系統(tǒng)中最重要的三個(gè)命令,它們以其強(qiáng)大的功能和廣泛的應(yīng)用場(chǎng)景而聞名。這三個(gè)工具的組合使用幾乎可以完美應(yīng)對(duì)Shell中的數(shù)據(jù)分析場(chǎng)景,因此被統(tǒng)稱為Linux三劍
    的頭像 發(fā)表于 03-03 10:37 ?961次閱讀

    Linux ip命令常用操作

    Linux?ip命令常用操作 在Linux系統(tǒng)中,ip命令是用于管理網(wǎng)絡(luò)接口和路由的強(qiáng)大工具。相比于舊的?ifconfig命令,ip
    的頭像 發(fā)表于 02-19 10:23 ?1244次閱讀

    Linux文件管理命令詳解

    cat命令描述:該命令用于連接文件并打印到標(biāo)準(zhǔn)輸出設(shè)備上。
    的頭像 發(fā)表于 02-17 10:34 ?999次閱讀
    <b class='flag-5'>Linux</b>文件管理<b class='flag-5'>命令</b>詳解