網站首頁 編程語言 正文
函數的定義和調用
函數的定義:def作為函數定義的關鍵字,為了告訴python這是一個函數。
無參函數
def s():
print("你好呀,祝你天天開心!")
s()
輸出:
你好呀,祝你天天開心!
有參函數
函數調用時,將實參傳遞給形參
舉例:
def person(name,age,add)://函數的定義
print("名字是%s,%s的年齡是%d,%s的家庭住址是%s"%(name,name,age,name,add))
person(input("請輸入你的名字"),int(input("請輸入你的年齡")),input("請輸入你的家庭住址"))
#函數的調用,形參實參的個數和類型必須保持一致
輸出:
請輸入你的名字易烊千璽
請輸入你的年齡22
請輸入你的家庭住址湖南懷化
名字是易烊千璽,易烊千璽的年齡是22,易烊千璽的家庭住址是湖南懷化
1:通過位置傳遞參數:僅通過位置關系將實參對應的形參聯系起來,位置實參的順序很重要
def person(name,age):
print("%s的年齡是%s"%(name,age))
person(12,"Jason")//12對應name,age對應jason
person("Jason",12)
輸出:
12的年齡是Jason
Jason的年齡是12
2:通過關鍵字傳遞參數:通過關鍵字將實參對應的形參聯系起來,順序不重要,因為python知道那個實參該賦給那個形參
舉例:
def person(name,age):
print("%s的年齡是%s"%(name,age))
person(age=12,name="Jason")
person(name="Jason",age=12)
輸出:
Jason的年齡是12
Jason的年齡是12
帶有返回值的函數
將函數的值返回給調用函數
舉例:
def add(number1,number2):
return number1+number2
print(add(12,23))
a=add(19,2)
print(a)
輸出:
35
21
將函數返回值作為實參進行調用:
def add(number1):
return number1+10
print(add(12))
a=add(19)
print(add(a))
輸出:
22
39
默認值:給形參設定默認值,對應的實參可以不傳遞值,如果實參也有值,則對應的默認值會被覆蓋。
def add(number1,number2=9):
return number1+number2
print(add(12))
a=add(19)
print(a)
輸出:
21
28
函數與循環結合
與while循環結合
def getSum(x):
//函數體
sum = 0
i = 1
while i < x:
sum += i
i += 1
return sum//將sun返回給調用函數
print(getSum(10))
print(getSum(100))
輸出:
45
4950
與for循環結合
def getSum(x):
i=1
add=1
for i in range(1,x):
add*=i
return add
print(getSum(10))
輸出:
362880
函數的分類
內置函數和自定義函數
內置函數
python中已經規定好用來實現某些特定功能的函數
舉例:
print(bool(2))//bool()函數用來查看數據的布爾值,非0返回True,0或返回False
print(abs(-10))//abs()函數用來取數據的絕對值
print(type(12))//type()函數用來查看變量的類型
輸出:
True
10
<class 'int'>
自定義函數
通過編寫函數體去實現自主想實現的功能。
舉例:
def add(number1,number2,nmuber3):
print(number1+number2+nmuber3)//打印三數之和
print(number1 * number2 * nmuber3)//打印三數之積
print(number1-number2-nmuber3)//打印數之差
add(10,2,7)
輸出:
19
140
1
函數的嵌套調用
自定義函數與三目運算符結合:
def add(x,y):
return x+y if x>y else x-y //三目運算符:如果x>y,則返回值為x+y,否則為x-y
print(add(1,3))
print(add(19,2))
輸出:
-2
21
自定義函數的嵌套使用:
def add(a,b,c,d):
max1=max(a,b)
max2=max(max1,c)
max3=max(max2,d)
return max3
max_s=add(23,4,15,6)
print(max_s)
輸出:
23
函數的嵌套定義
注意函數的定義語句和調用語句縮進必須保持一致。
def f1():
print('你好!')
def f2():
print('希望你每天開心')
def f3():
print('好好學習,天天向上!')
f3()
f2()
f1()
輸出:
你好!
希望你每天開心
好好學習,天天向上!
原文鏈接:https://blog.csdn.net/m0_64365419/article/details/125538077
相關推薦
- 2022-05-11 k8s創建一個簡單的Pod
- 2023-01-02 Flutter狀態管理Provider示例解析_Android
- 2022-04-22 使用elementui,upload組件,既要上傳文件,又要提交表單
- 2022-01-21 Docker報錯:OCI runtime exec failed: exec failed: con
- 2023-07-02 Python?中的裝飾器實現函數的緩存(場景分析)_python
- 2022-05-12 tp6 集成swoole
- 2022-08-31 python中ndarray數組的索引和切片的使用_python
- 2021-11-25 使用Xshell連接VMware上的Linux虛擬機(圖文步驟)_VMware
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支