Python學習心得(10)

2021-10-03 01:39:46 字數 3019 閱讀 6042

1,匿名函式:

lambda表示式通常就用在當需要使用乙個函式而無需給其命名的時候,也就是所謂的匿名函式,不需要耗費精力去命名,只需在lambda後面跟上表示式即可

lambda語句中,冒號前是引數,可以有多個,用逗號隔開,冒號右邊的返回值。lambda語句構建的其實是乙個函式物件

x =

lambda y:y**

2print

(x(5))

#25

或者還有更簡潔的辦法

print((

lambda y : y**2)

(5))

而換做平常的直接定義函式的方式會使得**量增加

def

y(x)

:return x**

2print y(

5)

其實,lambda和普通的函式相比,就是省去了函式名稱而已,同時這樣的匿名函式,又不能共享在別的地方呼叫。

lambda函式也有它的獨特之處:

使用python寫一些執行指令碼時,使用lambda可以省去定義函式的過程,讓**更加精簡。

對於一些抽象的,不會別的地方再復用的函式,有時候給函式起個名字也是個難題,使用lambda不需要考慮命名的問題。

使用lambda在某些時候讓**更容易理解。

2,時間函式:

import time匯入time包

time.sleep()用於推遲呼叫執行緒的執行,可通過引數secs指秒數,表示程序掛起的時間。

time.time() #返回當前時間的時間戳(1970紀元後經過的浮點秒數)單位為秒

d = time.strptime()根據指定的格式把乙個時間字串解析為時間元組

d = time.strptime(

"2020-1-13 11:16:25"

,"%y-%m-%d %h:%m:%s"

)str--

>

tuple

time.strftime()接收以時間元組,並返回以可讀字串表示的當地時間,

d = time.strftime(

"%y-%m-%d %h:%m:%s"

,time.localtime())

str<--

tuple

time.clock(

)

3,日曆

import calendar匯入calendar包

calendar.month()返回乙個多行字串格式的year年month月日曆

calendar.month(

2020,1

,w=3

,l=1

)#january 2020

#mon tue wed thu fri sat sun

# 1 2 3 4 5

# 6 7 8 9 10 11 12

# 13 14 15 16 17 18 19

# 20 21 22 23 24 25 26

# 27 28 29 30 31

calendar.firstweekday() 顯示每週第一天預設情況下,首次載入caendar模組時返回0,即星期一。

calendar.isleap() 判斷是否是閏年

calendar.isleap(

2020

)#true

calendar.monthcalendar() 返回日期列表

calendar.monthcalendar(

2020,1

)#[[0, 0, 1, 2, 3, 4, 5], [6, 7, 8, 9, 10, 11, 12], [13, 14, 15, 16, 17, 18, 19], [20, 21, 22, 23, 24, 25, 26], [27, 28, 29, 30, 31, 0, 0]]

calendar.monthrange() 返回兩個整數組成的元組,第乙個是該月的第一天是星期幾,第二個是該月的天數。

calendar.monthrange(

2020,1

)#(2, 31)

4,隨機函式

import random

random.seed(42) 改變隨機數生成器的種子

random.random() 方法返回隨機生成的乙個實數,它在[0,1)範圍內

print

(random.random())

#0.551428908931943

random.uniform() 方法將隨機生成下乙個實數,它在 [x, y] 範圍內

random.uniform(3,

1)#1.6544501094185722

random.randint(1,10)隨機整數[1,10] 並且 arandom.randrange(1,10,2) 取1到10之間間隔為2的隨機整數

random.choice(「asdfghjkl」) 從字串,元組,列表中隨機提取乙個元素

random.shuffle(s)將序列s中的元素順序打亂

import random

s =[1,

2,3,

4,5,

6,7,

8,9]

random.shuffle(s)

print

(s)#[5, 6, 2, 3, 4, 8, 9, 1, 7]

random.sample(s,3)從s中隨機獲取3個值

s =[1

,2,3

,4,5

,6,7

,8,9

]print

(random.sample(s,3)

)#[5, 7, 4]

學習心得 python學習心得

自從來了深圳工作以後,尤其是屢屢面試碰壁以後。發現其實自己的知識面很窄,做筆試題的時候絞盡腦汁還是漏洞百出,並不是不會做,而是出現一大堆不該有的失誤。每次被問道,對資料庫了解嗎?說一大堆看起來很高階的東西 好啊,那我們寫幾個sql語句吧。馬上完蛋了,沒了手冊關鍵字都記不起。了解哪幾種指令碼語言,sh...

Python學習心得

python 學習心得 定義乙個類的方法 class classname 其中 init 可以看成是類的建構函式,定義python的私有函式的方法是 funtionname,定義私有資料的方法是 dataname,看看下面的例子。class myclass a example class i 123...

python學習心得

一,高階特性 1,切片 start stop step l range 6 l 3,1,2 resulte is 3 2,迭代 2.1按itervalues d for k in d print k,d k 1 22 3 3 42.2 按iteritems for v in d.iteritems ...