python 函式及練習

2022-06-30 01:06:10 字數 1337 閱讀 3495

一、函式的返回值

可以通過人return 來指定函式的返回值

用乙個變數來接收返回值

return 後面跟什麼值,函式就會返回什麼值

# 在函式中return後的**都不會被執行,return一旦執行,函式自定結束

例如: print('jaaj')

return '3'

print('123')

print(fn) # fn是函式物件,列印fn 就是在列印函式物件,

print(fn()) # fn() 是在呼叫函式,列印fn() 實際上就是在列印fn()的返回值

二、函式的作用域(scope): 作用域指的是變數生效的區域

scope = locals() # 要獲取函式內部的命名空間

# globals() # 這個函式可以在任意位置獲全域性的取命名空間

遞迴函式-- - -- - - - - - - - - - - -- - - -

遞迴:自己去引用自己

遞迴函式就是在函式中呼叫自己

遞迴是解決問題的一種方式

整體思想就是將乙個大問題分解為乙個乙個的小問題,直到問題無法分解時在去解決問題

# 遞迴函式的兩個條件

1.基線條件 問題可以被分解為最小的問題,當滿足基線條件時,遞迴就不在執行了

2.遞迴條件 將問題繼續分解的條件

3.用遞迴方法求階乘:

def fn2(n):

# 引數n 要求階乘的數字

# 基線條件 判斷n為1的時候,就不遞迴了

if n == 1:

return 1

# 遞迴條件

return n * fn2(n-1)

print(fn2(10))

4.定義乙個函式,來為任意數字做任意冪運算

def fn1(n,i):

# 基線條件

if i == 1:

return n

# 遞迴條件

return n * fn1(n,i-1)

print(fn1(5,8))

5.先檢查最後乙個字元和第乙個字元是否相等,如果不是,一定不是回文

def fn2(s):

# 引數s 要檢查的字串

# 基線條件

if len(s) < 2:

# 字串的長度小於2,一定是回文

return true

elif s[0] != s[-1]:

# 不是回文

return false

# 遞迴條件

return fn2(s[1:-1])

print(fn2('abcdefedcba'))

Python函式練習

def upperandlowercount str upper count,lower count 0,0for i in str if i.isupper upper count 1elif i.islower lower count 1else continue return upper co...

Python 函式 練習

def sum args val 0 for i in args val i val return val a 10 b 20 def test a,b print a,b c test b,a print c a 20,b 10 c none 因為函式中沒有return,因此返回的是none a ...

python 類的練習及內建函式過載

有關python類的練習題 定義乙個n維向量類 1 建立乙個初始化向量的成員函式 2 過載格式化輸出函式 3 將向量的模裝飾成屬性函式 4 過載向量加法運算 5 過載向量減法運算 6 求兩向量的點積 7 給出測試主程式 具體 如下 class vector 建立成員函式 def init self,...