python-函式使用
1. 定義函式
def my_max(x,y) :
if x>y :
max = x
else :
max = y
return max
def max2(x,y) :
if x>y :
max = x
else :
max = y
return max,x
2. 呼叫函式
a = my_max(1,2)
(a,b) = max2(1,2)
3. 函式引數
3.1必備引數
一般引數,函式呼叫時必須寫上
3.2預設引數
呼叫函式時,預設引數的值如果沒有傳入,則被認為是預設值。
def max(a,b=2)
3.3不定長引數
def max(a,*b) :
for n in b :
3.4關鍵字引數
指函式呼叫時,顯性指出傳參的關鍵字,並賦予value
函式呼叫:person(‘Bob’, 35, city=‘Beijing’)
3.5命名關鍵字引數
def person(name, age, *, city, job):
print(name, age, city, job)
person(‘Jack’, 24, city=‘Beijing’, job=‘Engineer’)
4. 引數傳遞
python 函式的引數傳遞:
不可變型別:類似 c++ 的值傳遞,如 整數、字串、元組。如fun(a),傳遞的只是a的值,沒有影響a物件本身。比如在 fun(a)內部修改 a 的值,只是修改另一個複製的物件,不會影響 a 本身。
可變型別:類似 c++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改後fun外部的la也會受影響
python 中一切都是物件,嚴格意義我們不能說值傳遞還是引用傳遞,我們應該說傳不可變物件和傳可變物件。
5. 匿名函式
匿名函式
python 使用 lambda 來建立匿名函式。
- lambda只是一個表示式,函式體比def簡單很多。
- lambda的主體是一個表示式,而不是一個程式碼塊。僅僅能在lambda表示式中封裝有限的邏輯進去。
- lambda函式擁有自己的名稱空間,且不能訪問自有引數列表之外或全域性名稱空間裡的引數。
- 雖然lambda函式看起來只能寫一行,卻不等同於C或C++的行內函數,後者的目的是呼叫小函式時不佔用棧記憶體從而增加執行效率。
lambda [arg1 [,arg2,…argn]]:expression
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 可寫函式說明
sum = lambda arg1, arg2: arg1 + arg2
# 呼叫sum函式
print "相加後的值為 : ", sum( 10, 20 )
print "相加後的值為 : ", sum( 20, 20 )
參考連結:https://www.runoob.com/python/python-functions.html
相關文章
- python-內建函式(搭配lambda使用)Python函式
- python-函式基礎Python函式
- python- 函式高階Python函式
- python-函式入門(一)Python函式
- python-算數運算子對應的函式Python函式
- python-邏輯運算子對應的函式Python函式
- Python-程式語法 - Python註釋&基本函式Python函式
- Python-內建函式-尹成-專題視訊課程Python函式
- 函式: 函式是怎麼使用的?函式
- 何時使用函式表示式與函式宣告函式
- edge函式使用函式
- 【Java】函式使用Java函式
- pipe函式使用函式
- 02_函式定義及使用函式函式
- 如何使用函式指標呼叫類中的函式和普通函式函式指標
- round函式與trunc函式的使用方法函式
- 【函式】Oracle中聚合函式rank()使用方法函式Oracle
- Shell 函式的使用函式
- Thunk函式的使用函式
- Generator 函式的使用函式
- Spark Sql 函式使用SparkSQL函式
- LNNVL函式的使用函式
- Grouping函式使用函式
- exe等函式使用函式
- Oracle over()函式使用Oracle函式
- 索引中使用函式索引函式
- sqlserver DATEPART函式使用SQLServer函式
- smarty塊函式使用函式
- 使用bind()函式的產生的函式用作建構函式this的指向函式
- 函式指標使用c++類成員函式函式指標C++
- vb如何使用ftp函式,vb如何使用ftp函式要知道這些FTP函式
- async函式使用場景函式
- 高階函式的使用函式
- tap函式的日常使用函式
- hive視窗函式使用Hive函式
- 在 bash 中使用函式函式
- 第8課 使用函式函式
- Linux access()函式 使用Linux函式