日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python自学笔记_python学习笔记(4)

發布時間:2023/12/19 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python自学笔记_python学习笔记(4) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

函數定義和調用

函數就是最基本的一種代碼抽象的方式(python有許多內置函數)

調用:要調用一個函數,需要知道函數 的名稱和參數

比較函數cmp(x,y)就需要兩個參數,如果xy就返回1

數據類型轉換函數,不如int()函數可以把其他數據類型轉換為整數

int(‘123’)

123

int(12.34)

12

例如:

str(123)

‘123’

str(12.3)

‘12.3’

編寫函數:

在python中,定義以惡函數要使用def語句,一次寫出函數名,括號,括號中的參數和冒號,然后在縮進塊中編寫函數體,函數的返回值用return 語句返回

例如:定義一個求絕對值的my_abs函數

def my_abs(x):

if x>=0

return x

else

return -x

注意:如果沒有return語句,函數執行完畢也會返回結果,只是結構為none

函數返回多值

但其實這只是一種假象,python函數返回的仍然是單一值,python的函數返回多值其實就是返回一個tuple

遞歸函數:如果一個函數在內部調用自己本身,這個函數就是遞歸函數

例如:計算階乘n!

def fact(n):

if n==1

Return n*fact(n-1)

fact(1)

1

fact(5)

120

知識點:使用遞歸函數需要注意防止棧溢出。在計算機中,函數調用時通過棧(stack)這種數據結構實現的,每當進入一個函數調用,棧就會加一層棧幀,每當函數返回,棧就會減一層棧幀。由于棧的大小不是無限的,所以遞歸調用的次數過多,會導致棧溢出。

定義默認參數

例如python自帶的int()函數,其實就有兩個參數,既可以傳一個參數,又可以傳兩個參數

int(‘123’)

123

int(‘123’,8)

83

注意:int()函數的第二個參數蘇是轉換進制,如果不傳,默認是十進制(base=10)

知識點:由于函數的參數按從左到右的順序匹配。所以默認參數只能定義在必須函數的后面

定義可變參數

如果想讓一個函數能接受任意個參數,我們可以定義一個可變參數:

def fn(args)

print agrs

可變參數的名字前面有個號,我們可以傳入任意個參數給可變參數:

fn()

()

fn(‘a’)

(‘a’)

fn(‘a’,’b’,’c’)

(‘a’,’b’,’c’)

可變參數也不是很神秘,python解釋器會把傳入的一組參數組裝正一個tuple傳遞給可變參數,因此在函數內部,直接把變量args看成一個tuple就好了

切片操作:

取一個list的部分元素是非常常見的操作

L=[‘Adma’,’Lisa’,’Bart’,’Paul’]

r=[]

n=3

for i in range(n)

... r.append(L[i])

...

r

[‘Adma’,’Lisa’,’Bart’]

切片操作符

L[0:3] 表示,從索引0開始取,知道索引3 為之,大怒包括3,即0,1,2,正好是三個元素

L[:3] 如果第一個索引是0,還可以省略

L[:] 只用一個 : ,表示從頭到尾

切片操作還可以制定第三個參數

L[::2] 第三個參數表示每N個取一個,L[::2]表示每兩個元素取出來一個,即隔一個取一個

倒序切片:

記住倒數第一個元素的索引是-1,倒序切片包含起始索引,不包含結束索引

總結

以上是生活随笔為你收集整理的python自学笔记_python学习笔记(4)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。