函式 def定義函式

2021-09-17 02:06:34 字數 2205 閱讀 8974

函式 def定義函式

必須引數

不定長引數:def add(*args) add(1,2,3,4,5)無命名引數 元組

def add(**args)print_info ('wenson',30,『male』)把鍵值對入到字典裡儲存

關於不定長引數的位置:*args放在左邊,**kwargs引數放在右邊

沒有名字的值傳給元組,有名字的傳到字典,有不定長引數的預設引數放左邊,沒有放右邊

返回值:

#返回值

# def f():

# print('ok')

# return 10 #作用:1 結束函式 ,2 返回乙個對像

# a=f()

# print(a)

# def add(*args): #注意點:1.函式如果沒有return,會預設返回乙個none

# #2.如果return多個物件,那麼python會把多個物件封裝成乙個元組返回

# sum=0

# for i in args:

# sum+=i

# print(sum)

# return sum

# a=add(1,2,3,4,5)

# print(a)

#作用域:built_in 內建作用域----global全域性作用域---enclosin巢狀作用域--local本地作用域

#只有模組、類、及函式才能引入新作用域

#內部作用域要修改外部作用域變數的值時,全域性變數要使用global關鍵字,巢狀作用域變數要使用nonlocal關鍵字

#nonlocal是python3新增的關鍵字

# count = 10

# def outer():

# print(count)

# outer()

#遞迴函式:1.呼叫自身函式,2.有乙個結束條件,3.但凡是遞迴可以寫的迴圈都可以實現,效率不高

# def f(n):

# sum_f = 1

# for i in range(1,n) :

# sum_f = sum_f*i

# return sum_f

# print(f(7))

## def fac (n):

# if n==1:

# return 1

# return n*fac(n-1)

# print(fac(9))

#斐波那契# 數列

# def fibo(n):

# if n==0 or n==1:

# return n

# return fibo(n-1)+fibo(n-2)

# print(fibo(9))

#重要內建函式

# filter#過慮器

# str=['a','b','c','d']

# def fun1(s):

# if s!='a':#過慮『a』

# return s

# ret = filter(fun1,str)

# print(ret)#ret是乙個迭代器物件

# print(list(ret))#['b', 'c', 'd']

# map#修改器

# str=['a','b','c','d']

# def fun2(s):

# return s +"alvin"#['aalvin', 'balvin', 'calvin', 'dalvin']

# ret = map(fun2,str)

# print(ret)#map objectr 迭代器

# print(list(ret))

# #reduce #疊加器

# from functools import reduce

## def add1(x,y):

# return x+y

# print(reduce(add1,range(1,101)))#結果就是乙個值

#lambda 匿名函式

from functools import reduce

print(reduce(lambda a,b :a*b,range(1,6)))

def定義函式

輸入函式 input 函式從控制台獲得使用者輸入 變數 input 提示性文字 獲得的使用者輸入以字串形式儲存在變數中 in 二元操作符 賦值語句 單個賦值 同步賦值 同時給多個變數賦值,即先運算右側n個表示式,然後同時將表示式結果賦給左側 例如 t x,x y,y t x,y y,x for i ...

函式的定義 def

在某些程式語言當中,函式宣告和函式定義是區分開的 在這些程式語言當中函式宣告和函式定義可以出現在不同的檔案中,比如c語言 但是在python中,函式宣告和函式定義是視為一體的。在python中,函式定義的基本形式如下 def function params block return expressi...

自定義函式(def) 函式與過程

1.函式返回值 def say print itxds print say itxds none 函式沒有顯性返回時,預設返回none 2.變數作用域 區域性變數 def cal amount,rate finalamount amount rate return finalamount cal 1...