本人在廖雪峰的python教程學(xué)習(xí)python,在此記錄一些筆記敌买,記一些重要的東西节腐,以便查詢及復(fù)習(xí)。
輸入與輸出
用print()
在括號中加上字符串麸澜,就可以向屏幕上輸出指定的文字挺尿。
print()
會依次打印每個字符串,遇到逗號“,”會輸出一個空格炊邦。
Python提供了一個input()
编矾,可以讓用戶輸入字符串,并存放到一個變量里馁害。
注釋
在python中窄俏,以#
開頭的語句是注釋。
當(dāng)語句以冒號:
結(jié)尾時碘菜,縮進的語句視為代碼塊凹蜈。
Python允許用r''
表示''
內(nèi)部的字符串默認不轉(zhuǎn)義.
除法
在Python中,有兩種除法忍啸,一種除法是/
仰坦,/
除法計算結(jié)果是浮點數(shù),即使是兩個整數(shù)恰好整除计雌,結(jié)果也是浮點數(shù)悄晃。
還有一種除法是//
,稱為地板除凿滤,兩個整數(shù)的除法仍然是整數(shù)妈橄。
Python的整數(shù)沒有大小限制。
函數(shù)
定義函數(shù)用def
開頭鸭巴,依次寫出函數(shù)名眷细、括號、括號中的參數(shù)和冒號:
鹃祖。
如果沒有return
語句溪椎,函數(shù)執(zhí)行完畢后也會返回結(jié)果,只是結(jié)果為None
。
空函數(shù):如果想定義一個什么事也不做的空函數(shù)校读,可以用pass
語句沼侣。pass
語句什么都不做,那有什么用歉秫?實際上pass可以用來作為占位符蛾洛,比如現(xiàn)在還沒想好怎么寫函數(shù)的代碼,就可以先放一個pass
雁芙,讓代碼能運行起來轧膘。
函數(shù)可以返回多個值,返回值是一個tuple兔甘!但是谎碍,在語法上,返回一個tuple可以省略括號洞焙,而多個變量可以同時接收一個tuple蟆淀,按位置賦給對應(yīng)的值,所以澡匪,Python的函數(shù)返回多值其實就是返回一個tuple熔任,但寫起來更方便。
參數(shù)組合
在Python中定義函數(shù)唁情,可以用必選參數(shù)疑苔、默認參數(shù)、可變參數(shù)荠瘪、關(guān)鍵字參數(shù)和命名關(guān)鍵字參數(shù)夯巷,這5種參數(shù)都可以組合使用。但是請注意哀墓,參數(shù)定義的順序必須是:必選參數(shù)趁餐、默認參數(shù)、可變參數(shù)篮绰、命名關(guān)鍵字參數(shù)和關(guān)鍵字參數(shù)后雷。
比如定義一個函數(shù),包含上述若干種參數(shù):
def f1(a, b, c=0, *args, **kw):
print('a =', a, 'b =', b, 'c =', c, 'args =', args, 'kw =', kw)
def f2(a, b, c=0, *, d, **kw):
print('a =', a, 'b =', b, 'c =', c, 'd =', d, 'kw =', kw)
在函數(shù)調(diào)用的時候吠各,Python解釋器自動按照參數(shù)位置和參數(shù)名把對應(yīng)的參數(shù)傳進去臀突。
>>> f1(1, 2)
a = 1 b = 2 c = 0 args = () kw = {}
>>> f1(1, 2, c=3)
a = 1 b = 2 c = 3 args = () kw = {}
>>> f1(1, 2, 3, 'a', 'b')
a = 1 b = 2 c = 3 args = ('a', 'b') kw = {}
>>> f1(1, 2, 3, 'a', 'b', x=99)
a = 1 b = 2 c = 3 args = ('a', 'b') kw = {'x': 99}
>>> f2(1, 2, d=99, ext=None)
a = 1 b = 2 c = 0 d = 99 kw = {'ext': None}
最神奇的是通過一個tuple和dict,你也可以調(diào)用上述函數(shù):
>>> args = (1, 2, 3, 4)
>>> kw = {'d': 99, 'x': '#'}
>>> f1(*args, **kw)
a = 1 b = 2 c = 3 args = (4,) kw = {'d': 99, 'x': '#'}
>>> args = (1, 2, 3)
>>> kw = {'d': 88, 'x': '#'}
>>> f2(*args, **kw)
a = 1 b = 2 c = 3 d = 88 kw = {'x': '#'}
所以贾漏,對于任意函數(shù)候学,都可以通過類似func(*args, **kw)的形式調(diào)用它,無論它的參數(shù)是如何定義的纵散。