Python基礎之函式

2021-10-03 21:47:54 字數 2368 閱讀 6322

def 函式名(引數):

語句1語句2

例 判斷回文

#!/usr/bin/env python3

defpalindrome

(s):

#定義函式

return s == s[::

-1]#函式內容,縮排,返回是或否

global a 在函式中宣告全域性變數a

當函式內部更改了a的值,整個**的a都改變了

#!/usr/bin/env python3

defchange()

:global a #宣告全域性變數a

a =90print

(a)a =

9print

("before the function call "

, a)

print

("inside change function"

, end=

' ')

#輸出後不換行,加空格

引數賦值規則和c++類似

可以給未賦值引數預設值

當有多個引數時,有預設值的引數,後面的引數也要有預設值

預設值只被賦值一次,如果多次呼叫函式,引數的值會往後順延覆蓋掉預設值,這一點可以用引數的相應關鍵字來對應

比如

>>

>

deffunc

(a, b=

5, c=10)

:...

print

('a is'

, a,

'and b is'

, b,

'and c is'

, c)..

.>>

> func(12,

24)a is

12and b is

24and c is

10>>

> func(

12, c =24)

#明確c的值是24,而不是順延b

a is

12and b is

5and c is

24>>

> func(b=

12, c =

24, a =-1

)a is-1

and b is

12and c is

24

map()

接受乙個函式乙個序列作為輸入

將序列的每個值呼叫函式

輸出乙個序列(呼叫函式後產生的)

>>

> lst =[1

,2,3

,4,5

]>>

>

defsquare

(num):.

.."返回所給數字的平方."..

.return num * num..

.>>

>

print

(list

(map

(square, lst)))

[1,4

,9,16

,25]

其他高階函式

sorted()、filter()、functools()

例 讀取檔案內容並提取出字串中的數字並列印

''' 從/tmp/string.txt中讀取字串,read()讀取字串,

for迴圈遍歷i中是否有數字,如果有加入到res中'''

with

open

('/tmp/string.txt'

)as f:

s = f.read(

)res =

""for i in s :

if i.isdigit():

res += i

print

(res)

python之函式基礎

python 函式 python函式可以返回多值 defadd dif x,y,sum x y dif x y return sum,dif a,b add dif 2,3 print a,b 5 1 r add dif 2,3 print r 5,1 本質來說返回多值的函式其實返回乙個元組tupl...

Python基礎之函式

不同型別的引數的優先順序 在引數列表中的順序 def testfunc1 pass這是乙個最簡單的函式,沒有引數,沒有返回,pass表示該函式沒有做任何操作,testfunc1是函式名,def是關鍵字,表示這是乙個函式 呼叫函式時給出函式並給函式傳遞相應的引數,對於命名關鍵字引數需要給出引數名,位置...

Python之函式(基礎)

1.函式的定義 1 函式的定義與呼叫 定義函式 def say hello print hello1 print hello2 print hello3 呼叫函式,函式只有被呼叫了才會有輸出值 示例1 定義求和函式 計算 20 30 2 函式的巢狀 def fun1 print world def ...