Python學習筆記(三)2020 11 01

2021-10-10 04:06:20 字數 2841 閱讀 5992

1.python基礎知識

1.1 isinstance()與issubclass()

isinstance(object ,classinfo),用於判斷object是否為classinfo的乙個例項,或者是否為classinfo類的子類的乙個例項。

issubclass(class ,classinfo),用於判斷引數class是否為classinfo的子類。

1.2 收集引數

python函式引數分為位置引數關鍵字引數預設引數收集引數

def

test

(*params)

:print

("有%d個引數"

%len

(params)

)print

("第二個引數是:"

,params[1]

)print

(params)

test(

'f',

'i',

's',

'h',

'c')

有5個引數

第二個引數是: i

('f'

,'i'

,'s'

,'h'

,'c'

)

python就是把標誌為收集引數的引數們打包成乙個元組,引數標誌為乙個星號,兩個星號的收集引數表示將引數打包為字典的形式。如果在收集引數後邊還需要指定其他引數,在呼叫函式的時候就應該使用關鍵數引數來指定,如果引數中帶有收集引數,可將其他引數設定為預設引數關鍵字引數預設引數可位於收集引數後,位置引數只能位於收集引數前。

星號可以解包,如傳入引數a為乙個列表或字典,可以在a前面加以上星號表示實參需「解包」後才能使用,未解包直接輸入會報錯。

def

test

(*params)

:print

(params)a=[

'f',

'i',

's',

'h',

'c']

test(

*a)(

'f',

'i',

's',

'h',

'c')

1.3裝飾器

在函式**執行期間動態增加功能的方式稱為「裝飾器」(decorator)。本質上,decorator就是乙個返回函式的高階函式,我們定義乙個能列印日誌的decorator如下:

def

log(func)

:def

(*args,

**kw)

:print

('call %s():'

%func.__name__)

return func(

*args,

**kw)

觀察上面的log函式,因為他是乙個decorator,所以接收乙個函式作為引數,並放回乙個函式,我們借助@語法,把decorator置於函式定義處。

@log

defnow()

:print

('2020-11-1'

)

呼叫now()函式,不僅執行now()函式本身,還會在執行now()函式前列印一行日誌:

>>

>now(

)call now():

2020-11

-1

1.函式可以賦值給乙個變數

2.函式可以作為元素新增到集合物件中去

3.函式可以作為引數值傳遞給其他函式

4.函式可以當作函式的返回值

1.5 關於python中socket的描述

1.使用recfrom()接收tcp資料

2.使用connect()初始化tcp伺服器連線

3.伺服器端使用listen()開始tcp監聽

2.要點整理

2.1字串格式化語法

print('gnu\'s not %s %%' % 'unix')

輸出:gnu's not unix %

替換字串:%s

替換整型:%d

替換浮點型:%f

顯示%:%%

2.2 id() 函式和小整數池

id(object)是python的乙個用於返回object記憶體位址的函式。

已知a=[1,2,3]和b=[1,2,4],那麼id(a[1])==id(b[1])的執行結果為()

輸出:true

為提高記憶體利用率,python對一些簡單的物件(如數值較小的整型,字串等)採用重用物件記憶體的方法,python對於小整數物件有小整數物件池,範圍在[-5,257)之間,這個範圍內整數記憶體位址一樣,呼叫時均從小整數池中取。

2.3__name__

當執行模組時時__name__等於"main",當import到其他模組中,則__name__等於模組名稱(不包含字尾.py)。

2023年python學習筆記

第一課 python 注釋 第二課 識別符號及關鍵字 第三課 資料型別 第四課 輸入input 輸出print 以及format使用 第五課 運算子 第六課 條件判斷語句if 第七課 python迴圈語句 第八課 python字串操作 n t r 切片操作 第九課 python進製轉換 bin,oc...

python學習筆記(三)

python的序列 列表,元組,字串都是列表,列表的主要特點是索引和切片操作 序列的基本操作 1.len 求序列的長度 2.連線兩個序列 3.重複序列元素 4.in判斷序列是否在元組中 5.max 返回最大值 6.min 返回最小值 7.cmp tup1,tup2 比較兩個序列的值 元組 元組和字串...

python學習筆記三

一 輸出 print的幾種用法 print hello world hello world中間有空格 print hello wolrd helloworld 中間沒有空格 print hello wolrd helloworld 中間沒有空格 print hello world hello wor...