老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

python函數(shù)參數(shù)解析 python 命令行參數(shù)解析

Python筆記:命令行參數(shù)解析

有些時候我們需要通過命令行將參數(shù)傳遞給腳本,C語言中有個getopt()方法,python中也有個類似的命令行參數(shù)解析方法getopt()。python也提供了比getopt()更簡潔的argparse方法。另外,sys模塊也可以實現(xiàn)簡單的參數(shù)解析,本文將對這3種命令行參數(shù)解析方法簡要介紹。

創(chuàng)新互聯(lián)2013年開創(chuàng)至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都做網(wǎng)站、網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元余慶做網(wǎng)站,已為上家服務(wù),為余慶各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792

sys.argv是傳入的參數(shù)列表,sys.argv[0]是當(dāng)前python腳本的名稱,sys.argv[1]表示第一個參數(shù),以此類推。

命令行運行:

可以看到傳入的參數(shù)通過sys.argv來獲取,它就是一個參數(shù)列表。

python的getopt與C語言的的getopt()函數(shù)類似。相比于sys模塊,支持長參數(shù)和短參數(shù),并對參數(shù)解析賦值。但它需要結(jié)合sys模塊進行參數(shù)解析,語法格式如下:

短參數(shù)為單個英文字母,如果必須賦值需要在后面加英文冒號( : ),長參數(shù)一般為字符串(相比短參數(shù),更能說明參數(shù)含義),如果必須賦值需要在后面加等號( = )。

命令行運行:

注意:短參數(shù)(options)和長參數(shù)(long_options)不需要一一對應(yīng),可以任意順序,也可以只有短參數(shù)或者只有長參數(shù)。

argparse模塊提供了很多可以設(shè)置的參數(shù),例如參數(shù)的默認值,幫助消息,參數(shù)的數(shù)據(jù)類型等。argparse類主要包括ArgumentParser、add_argument和parse_args三個方法。

下面介紹這三個函數(shù)的使用方法。

argparse默認提供了 -h | --help 參數(shù):

命令行運行:

下面列出部分參數(shù):

下面來添加參數(shù):

命令行運行:

parse_args() 方法用于解析參數(shù),在前面的示例代碼中使用parse_args方法來提取參數(shù)值,對于無效或者錯誤的參數(shù)會打印錯誤信息和幫助信息:

命令行運行:

本文介紹了Python的三種命令行參數(shù)解析方法sys.argv、getopt和argparse,可以根據(jù)自己的需要進行選擇,getopt和argparse兩種方法相比來說,建議選擇argparse,代碼量更少更簡潔。更詳細的使用方法參考官方文檔:

--THE END--

Python基礎(chǔ)實戰(zhàn)之函數(shù)的參數(shù)講解(三)

參數(shù)可以是任意類型。

比如可以是列表。

-------------------------------

library=['python精通','MySQL','數(shù)據(jù)分析','人工智能']

#形參

def add_book(bookname):

library.append(bookname)

print('圖書添加成功!')

pass

def show_book(books):

for book in books:

print(book)

pass

pass

#調(diào)用函數(shù)

add_book('新概念英語')

show_book(library)

------------------------------

#輸出列表中所有大于50的數(shù)

list1=[23,45,77,88,58,10]

def get_list(list_1):

new_list=[ ]

for e in list_1:

if e=50:

new_list.append(e)

pass

pass

print(new_list)

pass

#調(diào)用函數(shù)

get_list(list1) #[77,88,58]

------------------------------

#刪除列表中小于50的數(shù)

def remove_from_list(list_1):

n=0

while nlen(list_1): p="" /len(list_1):

if list_1[n]50:

list_1.remove(list_1[n])

pass

else:

n+=1

pass

pass

print(list_1)

pass

#調(diào)用函數(shù)

remove_from_list(list1) #[77,88,58]

pytorch 常用函數(shù)參數(shù)詳解

1、torch.cat(inputs, dim=0) - Tensor?

參考鏈接:

[Pytorch] 詳解 torch.cat()

Pytorch學(xué)習(xí)筆記(一):torch.cat()模塊的詳解

函數(shù)作用:cat 是 concatnate 的意思:拼接,聯(lián)系在一起。在給定維度上對輸入的 Tensor 序列進行拼接操作。torch.cat 可以看作是 torch.split 和 torch.chunk 的反操作

參數(shù):

inputs(sequence of Tensors):可以是任意相同類型的 Tensor 的 python 序列

dim(int, optional):defaults=0

dim=0: 按列進行拼接?

dim=1: 按行進行拼接

dim=-1: 如果行和列數(shù)都相同則按行進行拼接,否則按照行數(shù)或列數(shù)相等的維度進行拼接

假設(shè) a 和 b 都是 Tensor,且 a 的維度為 [2, 3],b 的維度為 [2, 4],則

torch.cat((a, b), dim=1) 的維度為 [2, 7]

2、torch.nn.CrossEntropyLoss()

函數(shù)作用:CrossEntropy 是交叉熵的意思,故而 CrossEntropyLoss 的作用是計算交叉熵。CrossEntropyLoss 函數(shù)是將 torch.nn.Softmax 和 torch.nn.NLLLoss 兩個函數(shù)組合在一起使用,故而傳入的預(yù)測值不需要先進行 torch.nnSoftmax 操作。

參數(shù):

input(N, C):N 是 batch_size,C 則是類別數(shù),即在定義模型輸出時,輸出節(jié)點個數(shù)要定義為 [N, C]。其中特別注意的是 target 的數(shù)據(jù)類型需要是浮點數(shù),即 float32

target(N):N 是 batch_size,故 target 需要是 1D 張量。其中特別注意的是 target 的數(shù)據(jù)類型需要是 long,即 int64

例子:

loss = nn.CrossEntropyLoss()

input = torch.randn(3, 5, requires_grad=True, dtype=torch.float32)

target = torch.empty(3, dtype=torch.long).random_(5)

output = loss(input, target)

output

輸出為:

tensor(1.6916, grad_fn=NllLossBackward)

Python函數(shù)的參數(shù)類型

Python函數(shù)的參數(shù)類型主要包括必選參數(shù)、可選參數(shù)、可變參數(shù)、位置參數(shù)和關(guān)鍵字參數(shù),本文介紹一下他們的定義以及可變數(shù)據(jù)類型參數(shù)傳遞需要注意的地方。

必選參數(shù)(Required arguments)是必須輸入的參數(shù),比如下面的代碼,必須輸入2個參數(shù),否則就會報錯:

其實上面例子中的參數(shù) num1和num2也屬于關(guān)鍵字參數(shù),比如可以通過如下方式調(diào)用:

執(zhí)行結(jié)果:

可選參數(shù)(Optional arguments)可以不用傳入函數(shù),有一個默認值,如果沒有傳入會使用默認值,不會報錯。

位置參數(shù)(positional arguments)根據(jù)其在函數(shù)定義中的位置調(diào)用,下面是pow()函數(shù)的幫助信息:

x,y,z三個參數(shù)的的順序是固定的,并且不能使用關(guān)鍵字:

輸出:

在上面的pow()函數(shù)幫助信息中可以看到位置參數(shù)后面加了一個反斜杠 / ,這是python內(nèi)置函數(shù)的語法定義,Python開發(fā)人員不能在python3.8版本之前的代碼中使用此語法。但python3.0到3.7版本可以使用如下方式定義位置參數(shù):

星號前面的參數(shù)為位置參數(shù)或者關(guān)鍵字參數(shù),星號后面是強制關(guān)鍵字參數(shù),具體介紹見強制關(guān)鍵字參數(shù)。

python3.8版本引入了強制位置參數(shù)(Positional-Only Parameters),也就是我們可以使用反斜杠 / 語法來定義位置參數(shù)了,可以寫成如下形式:

來看下面的例子:

python3.8運行:

不能使用關(guān)鍵字參數(shù)形式賦值了。

可變參數(shù) (varargs argument) 就是傳入的參數(shù)個數(shù)是可變的,可以是0-n個,使用星號( * )將輸入?yún)?shù)自動組裝為一個元組(tuple):

執(zhí)行結(jié)果:

關(guān)鍵字參數(shù)(keyword argument)允許將任意個含參數(shù)名的參數(shù)導(dǎo)入到python函數(shù)中,使用雙星號( ** ),在函數(shù)內(nèi)部自動組裝為一個字典。

執(zhí)行結(jié)果:

上面介紹的參數(shù)可以混合使用:

結(jié)果:

注意:由于傳入的參數(shù)個數(shù)不定,所以當(dāng)與普通參數(shù)一同使用時,必須把帶星號的參數(shù)放在最后。

強制關(guān)鍵字參數(shù)(Keyword-Only Arguments)是python3引入的特性,可參考:。 使用一個星號隔開:

在位置參數(shù)一節(jié)介紹過星號前面的參數(shù)可以是位置參數(shù)和關(guān)鍵字參數(shù)。星號后面的參數(shù)都是強制關(guān)鍵字參數(shù),必須以指定參數(shù)名的方式傳參,如果強制關(guān)鍵字參數(shù)沒有設(shè)置默認參數(shù),調(diào)用函數(shù)時必須傳參。

執(zhí)行結(jié)果:

也可以在可變參數(shù)后面命名關(guān)鍵字參數(shù),這樣就不需要星號分隔符了:

執(zhí)行結(jié)果:

在Python對象及內(nèi)存管理機制中介紹了python中的參數(shù)傳遞屬于對象的 引用傳遞 (pass by object reference),在編寫函數(shù)的時候需要特別注意。

先來看個例子:

執(zhí)行結(jié)果:

l1 和 l2指向相同的地址,由于列表可變,l1改變時,l2也跟著變了。

接著看下面的例子:

結(jié)果:

l1沒有變化!為什么不是[1, 2, 3, 4]呢?

l = l + [4]表示創(chuàng)建一個“末尾加入元素 4“的新列表,并讓 l 指向這個新的對象,l1沒有進行任何操作,因此 l1 的值不變。如果要改變l1的值,需要加一個返回值:

結(jié)果:

下面的代碼執(zhí)行結(jié)果又是什么呢?

執(zhí)行結(jié)果:

和第一個例子一樣,l1 和 l2指向相同的地址,所以會一起改變。這個問題怎么解決呢?

可以使用下面的方式:

也可以使用淺拷貝或者深度拷貝,具體使用方法可參考Python對象及內(nèi)存管理機制。這個問題在Python編程時需要特別注意。

本文主要介紹了python函數(shù)的幾種參數(shù)類型:必選參數(shù)、可選參數(shù)、可變參數(shù)、位置參數(shù)、強制位置參數(shù)、關(guān)鍵字參數(shù)、強制關(guān)鍵字參數(shù),注意他們不是完全獨立的,比如必選參數(shù)、可選參數(shù)也可以是關(guān)鍵字參數(shù),位置參數(shù)可以是必選參數(shù)或者可選參數(shù)。

另外,python中的參數(shù)傳遞屬于對象的 引用傳遞 ,在對可變數(shù)據(jù)類型進行參數(shù)傳遞時需要特別注意,如有必要,使用python的拷貝方法。

參考文檔:

--THE END--

「python」 三個方面講解函數(shù)的缺省參數(shù)

所謂缺省參數(shù),在定義函數(shù)時,可以給某個參數(shù)指定一個默認值,具有默認值的參數(shù)就叫做缺省參數(shù)。調(diào)用函數(shù)時,如果沒有傳入缺省參數(shù)的值,則在函數(shù)內(nèi)部使用定義函數(shù)時指定的參數(shù)默認值。

缺省參數(shù)的作用:

函數(shù)的缺省參數(shù),將常見的值設(shè)置為參數(shù)的缺省值,從而簡化函數(shù)的調(diào)用。

例如:對列表排序的方法

執(zhí)行結(jié)果:

在參數(shù)后使用賦值語句,可以指定參數(shù)的缺省值。

不設(shè)置缺省參數(shù):

執(zhí)行結(jié)果:張三 是 男生

# 假設(shè)班上的男生比女生多,我們不傳遞True這個參數(shù),讓性別默認是男生

設(shè)置缺省參數(shù):

執(zhí)行結(jié)果:

提示:

1. 缺省參數(shù),需要使用最常見的值作為默認值。

2. 如果一個參數(shù)的值不能確定,則不應(yīng)該設(shè)置默認值,具體的數(shù)值在調(diào)用函數(shù)時,由外界傳遞。

一句話講在定義函數(shù)時怎樣指定函數(shù)的缺省參數(shù)的默認值,在形參后面跟上一個等號,等號后面跟上參數(shù)的默認值就可以了??梢钥匆陨习咐?/p>

必須保證帶有默認值的缺省參數(shù)在參數(shù)列表末尾。

所以,以下定義是錯的:

PyCharm在錯誤的參數(shù)下面會有一個波浪線提示,告訴你要么給它挪到缺省參數(shù)前面,要么它也變成帶有默認值的缺省參數(shù)。

在調(diào)用函數(shù)時,如果有多個缺省參數(shù),需要指定參數(shù)名,這樣解釋器才能能夠知道參數(shù)的對應(yīng)關(guān)系。

執(zhí)行結(jié)果:

python-函數(shù)可變參數(shù)類型

python中的函數(shù),大多需要配置參數(shù),以下是幾種函數(shù)的參數(shù)類型:

1.必備參數(shù):以正確的順序、個數(shù)傳入函數(shù)。調(diào)用時的參數(shù)情況要和聲明時一樣。最常用的情況。

def tplink(a,b):

c=a+b+b

return c?

tplink(4,2)

2.關(guān)鍵字參數(shù):使用關(guān)鍵字參數(shù)允許函數(shù)調(diào)用時參數(shù)的順序和聲明時不一致,因為python解析器會在調(diào)用函數(shù)時,用參數(shù)名匹配參數(shù)值。

def tplink(age1,age2):

ageall=age1+age2+age2

return ageall

tplink(age2=4,age1=2)

3.默認參數(shù):默認某個參數(shù)的取值

def tplink(age1,age2=5):

ageall=age1+age2+age2

return ageall

tplink(age1=4)

4.不定長參數(shù):在聲明時并不確定 調(diào)用時的參數(shù)數(shù)量。這種情況,可以用不定長參數(shù)進行解決,具體操作是在參數(shù)名前用*。

但不能和 關(guān)鍵字參數(shù)并用。一般在正常參數(shù)arg之后。

*args、**kwargs的定義:

這兩個都是python中的不定長參數(shù),又稱為可變參數(shù)。

*args 表示任何多個無名參數(shù),它是一個 tuple ;

**kwargs 表示關(guān)鍵字參數(shù),它是一個dict。

同時使用 * args和 ** kwargs 時,必須 * args參數(shù)列要在 ** kwargs前。且都在arg之后。

函數(shù)在調(diào)用時,會根據(jù)順序,看是否放進 *args 或者 **kwargs中。

具體可根據(jù)實際情況使用,可以 更方便靈活的接收信息。


當(dāng)前題目:python函數(shù)參數(shù)解析 python 命令行參數(shù)解析
地址分享:http://www.xueling.net.cn/article/hhhosp.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 国产经典一区二区三区 | 日本丰满的人妻HD高清在线 | 中文字幕视频精品一区二区三区 | 亚洲熟女综合色一区二区三区 | porn一区 | 初尝黑人巨砲波多野结衣 | 在线91精品 | 桃色视频m3u8 | 成在线人av免费无码高潮喷水 | 国产日女人 | 色屁屁WWW影院免费观看 | 亚洲奇米影视 | 亚洲人成中文字幕在线观看 | 欧美videos另类精品 | 亚洲国产综合人成综合网站 | 色七七桃花综合影院 | 日本高清不卡在线观看 | 国产日本中文久久 | 国产中文三级全黄 | 国产乱子伦农村叉叉叉 | 国产精品人妻一区二区三区四区 | 91麻豆精品激情在线观看 | 激情中国色综合 | 国产黄色麻豆视频 | 亚洲一区成人在线观看 | 日韩中文字幕不卡 | 亚洲国产精品成人久久 | 久久男人AV资源网站 | 国产精品美女WWW爽爽爽视频 | 日本XXXⅩ色视频在线观看 | 国产免费高清视频 | 黄大色黄大片女爽一次 | 四虎国产精品成人免费久久 | 野花香社区在线视频观看播放 | 老司机午夜福利视频 | 大地网资源在线观看免费高清 | 男人用嘴添女人私密视频 | 91久久久久久久久久久久久久 | 午夜在线网站 | 欧美成在线视频 | 凸输偷窥xxxx间谍自由 |