丝袜人妻一区二区三区_少妇福利无码视频_亚洲理论片在线观看_一级毛片国产A级片

當前位置:首頁 > 旅游指南

divmod 這些鮮為人知的Python功能,你值得擁有!

在Python中發(fā)現(xiàn)新的函數是作者的一大愛好。每當遇到別人沒有注意到的功能,我都會饒有興趣的記錄下來。

沒有,這幾個星期我學了一些有趣的函數,比如StackOverflow上的一些我不知道的函數。這些被低估被埋沒的實用功能真的很值得擁有!

divmod

這個函數很有用,可以對兩個數進行模除%運算,然后返回商和余數。例如:

divmod(5, 2)[Out]: (2, 1)

這只是為了找到我們能適應2到5的次數。我們不需要拆分這個數,我們可以得到商是2,1是余數。它對于計算返回過程運行所需的時間(以小時、分鐘和秒為單位)特別有用,如下所示:

start =datetime.datetime.now() ... # process code goes hereend =datetime.datetime.now()# we get the total runtime in secondsruntime = (end - start).seconds # wewill assume 30000# how many hours are in these secs, what are the remainingsecs?hours, remainder = divmod(runtime, 3600)# now how many minutes and seconds arein our remainder?mins, secs = divmod(remainder,60)print("{:02d}:{:02d}:{:02d}".format(hours, mins, secs))[Out]: "08:00:08"casefold

這是一個特別有趣的字符串方法,功能類似于lower。但是casefold試圖更積極地標準化更廣泛的字符。在大多數情況下,lower和casefold的行為是相同的,但有時它們是不同的:

"?".casefold() # both ? and σ are the Greek letter sigma[Out]:"σ"

相反,使用較低的:

"?".lower() # however, lower recognizes them as different[Out]:"?"[Out]: False

在這里,兩個sigma都已經小寫了。根據使用情況,它可能會按預期運行。但是,如果你打算比較兩個等價的希臘語單詞,一個用σ,一個用σ。雖然它們是相同的,但只有casefold能讓我們準確地比較它們:

"?ρμ?σ"== "?ρμ??"[Out]:False"?ρμη?σ".lower() == "?ρμη??".lower()[Out]:False"?ρμ?σ".casefold() == "?ρμ??".casefold()[Out]:True*args, **kwargs

有時你可能會看到函數定義包含這兩個參數,比如def func(x,y,* args,** kwargs)。

它們都非常簡單,都允許我們將多個值傳遞給一個函數,然后將它們打包成一個生成器。至于是否將列表/生成器傳遞給標準參數,結果如下:

def func(values):for x in values:print(x, end=" ")func([1,2, 3])[Out]: 1 2 3

當使用* args時,我們應該將每個值作為新參數傳遞,而不是將它們都包含在列表中。

def func(*values):for x in values:print(x, end=" ")func(1,2, 3)[Out]: 1 2 3

請注意,您不需要輸入* args,只需輸入*值。因為只有一個星號*,所以它被定義為* args,與所使用的變量名無關。* args只是基于傳遞給函數的參數創(chuàng)建一個生成器對象。** kwargs創(chuàng)建字典。

因此,您可以按如下方式使用名稱和關鍵字參數:

def func(**values):for x in values:print(f"{x}:{values[x]}")func(x=1, y=2, z=3)[Out]: x: 1y: 2z: 3

同樣,可以隨意調用變量。在這種情況下,使用**值。用雙引號定義為**kwargs。

圖源:unsplash資料來源:unsplash

需要理解列表中的表達式,這絕對是Python最有用的功能之一。最常見的是列表理解,大部分人都見過以下幾種:

vals = [1, 2, 3, 4, 5][i**2 fori in vals][Out]: [1, 4, 9, 16, 25]

但是,您不僅可以使用方括號,還可以用幾乎相同的語法定義生成器表達式:

(i**2 for i in vals)[Out]: <generator object<genexpr> at 0x7f0281730fc0>

當然,生成器中的每個元素只有在被調用時才輸出。我們可以使用list()來實現(xiàn)這一點:

list((i**2 for i in vals))[Out]: [1, 4, 9, 16, 25]

只需在語法上做一點小小的改動,甚至用字典理解來構建字典:

{i: i**2 for i in vals}[Out]:{1: 1,2: 4,3: 9,4: 16,5: 25}

這些都是很有意思的功能,特別是divmod和casefold,我最近體驗過,一定要試試。

【聲明】本文版權歸原作者所有,內容為作者個人觀點。轉載的目的是為了傳遞更多的信息。如果涉及到作品的內容和版權,可以聯(lián)系本網站刪除。謝謝你。

更多信息請關注微信微信官方賬號:成都CDA數據分析師。

1.《divmod 這些鮮為人知的Python功能,你值得擁有!》援引自互聯(lián)網,旨在傳遞更多網絡信息知識,僅代表作者本人觀點,與本網站無關,侵刪請聯(lián)系頁腳下方聯(lián)系方式。

2.《divmod 這些鮮為人知的Python功能,你值得擁有!》僅供讀者參考,本網站未對該內容進行證實,對其原創(chuàng)性、真實性、完整性、及時性不作任何保證。

3.文章轉載時請保留本站內容來源地址,http://f99ss.com/junshi/1110505.html

上一篇

年輕人熱衷"玄學" 星座博主擁有數千萬粉絲 到底是什么狀況?

下一篇

離人心上電視劇在線觀看 西瓜視頻1-35集高清免費觀看

ex求導 高考函數單調性類問題:難,但用上導數將事半功倍 !

  • ex求導 高考函數單調性類問題:難,但用上導數將事半功倍 !
  • ex求導 高考函數單調性類問題:難,但用上導數將事半功倍 !
  • ex求導 高考函數單調性類問題:難,但用上導數將事半功倍 !

高分七號衛(wèi)星今日正式投入使用 高分7號衛(wèi)星參數及介紹

  • 高分七號衛(wèi)星今日正式投入使用 高分7號衛(wèi)星參數及介紹
  • 高分七號衛(wèi)星今日正式投入使用 高分7號衛(wèi)星參數及介紹
  • 高分七號衛(wèi)星今日正式投入使用 高分7號衛(wèi)星參數及介紹

壓型鋼板重量 YXB48-200-600壓型鋼板規(guī)格參數及理論重量表

  • 壓型鋼板重量 YXB48-200-600壓型鋼板規(guī)格參數及理論重量表
  • 壓型鋼板重量 YXB48-200-600壓型鋼板規(guī)格參數及理論重量表
  • 壓型鋼板重量 YXB48-200-600壓型鋼板規(guī)格參數及理論重量表

什么是減數和被減數 【博文·學資料】小學數學1—6年級口決定義歸類,孩子必背的數學概念

  • 什么是減數和被減數 【博文·學資料】小學數學1—6年級口決定義歸類,孩子必背的數學概念
  • 什么是減數和被減數 【博文·學資料】小學數學1—6年級口決定義歸類,孩子必背的數學概念
  • 什么是減數和被減數 【博文·學資料】小學數學1—6年級口決定義歸類,孩子必背的數學概念
彈性模量檢測儀 混凝土彈性模量測定儀(圓形)技術參數

彈性模量檢測儀 混凝土彈性模量測定儀(圓形)技術參數

TM-ⅱ型混凝土彈性模量測試儀簡介: 主要用于測量混凝土棱柱體或圓柱體試件的靜壓彈性模量。備注:產品符合GB11971和GB/T50081-2002標準的要求。  TM-ⅱ型混凝土彈性模量測試儀技術參數: 1.千分表量程:0 ~ 1毫米 2.上下環(huán)之間的中心距離:150毫米 3.試件尺寸:φ...

mate20x參數 華為mate20、20X哪個值得買?目前更傾向于20X?

  • mate20x參數 華為mate20、20X哪個值得買?目前更傾向于20X?
  • mate20x參數 華為mate20、20X哪個值得買?目前更傾向于20X?
  • mate20x參數 華為mate20、20X哪個值得買?目前更傾向于20X?

旋振篩 旋振篩的型號及參數

  • 旋振篩 旋振篩的型號及參數
  • 旋振篩 旋振篩的型號及參數
  • 旋振篩 旋振篩的型號及參數

朝鮮向半島東部海域發(fā)射不明飛行物? 韓軍方正分析飛行器的參數和射程 目前是什么情況?

韓國總統(tǒng)府青瓦臺發(fā)言人康珉碩25日向記者發(fā)送消息稱,青瓦臺將于當地時間上午9時舉行國家安全委員會常任委員緊急會議,就朝鮮向東部海域發(fā)射不明飛行器一事進行研判。25日,韓軍方稱朝鮮發(fā)射不明飛行物,韓軍方正分析飛行器的參數和射程。...