# 定义函数
def title():
print("123")
# 调用函数
title()
def yz(r):
print(2 * 3.14 * r)
# 调用函数并传值
yz(10)
a = int(input("请输入半径:"))
yz(a)
"""多个参数,两个数相加"""
def jia(a, b):
print(f"{a}+{b}={a+b}")
# 调用函数
jia(5, 10)
while True:
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
jia(a, b)
def jisuan(a, op, b):
if op == "+":
print(f"{a}+{b}={a+b}")
elif op == "-":
print(f"{a}-{b}={a - b}")
elif op == "*":
print(f"{a}*{b}={a * b}")
elif op == "/":
print(f"{a}/{b}={a / b}")
else:
print("运算符输入错误(+,-,*,/)")
# 调用函数,使用位置参数
jisuan(10, "-", 20)
# 调用函数,使用关键字参数,顺序可以随意
jisuan(a=20, op="/", b=10)
jisuan(op="/", b=10, a=20)
# 组合参数(位置参数+关键字参数)位置参数在前面,关键字参数在后面
jisuan(20, b=10, op="/")
def jisuan(a, b, op="+"):
if op == "+":
print(f"{a}+{b}={a+b}")
elif op == "-":
print(f"{a}-{b}={a - b}")
elif op == "*":
print(f"{a}*{b}={a * b}")
elif op == "/":
print(f"{a}/{b}={a / b}")
else:
print("运算符输入错误(+,-,*,/)")
# 调用函数,默认值参数可以不传
jisuan(10, 20)
# 调用函数,覆盖默认值
jisuan(10, 20, "-")
"""
def abc(*n)
会将所有参数,全部封装成一个元组,
不支持关键字传参
"""
# 声明一个函数,参数接受姓名
def abc(*n):
print(n)
abc("张三")
abc("张三", "李四")
abc("张三", "李四", 30)
abc({"name": "zz", "age": 20})
点击查看详情
('张三',)
('张三', '李四')
('张三', '李四', 30)
({'name': 'zz', 'age': 20},)
"""
def abc(**n):
支持任意多个关键字传参,参数被封装成字典
其他方式的参数不支持
"""
def abc(**n):
print(n)
abc(a=10, b=20, name="张三")
点击查看详情
{'a': 10, 'b': 20, 'name': '张三'}
"""
打散列表传递参数
abc(*lst)
实参,如果传递的是列表,在前面加上*,就可以打散列表
"""
def abc(*n):
print(n)
lst = [1, 3, 34, 4, 5, 6]
abc(*lst) # 打散列表,变成位置参数
点击查看详情
(1, 3, 34, 4, 5, 6)
"""
打散字典
调用的时候,传递实参的前面加**
abc(**dic) # 将字典打散,作为关键字参数传递
"""
def abc(**n):
print(n)
dic = {"name": "zs", "age": 20, "gender": "男"}
abc(**dic)
点击查看详情
{'name': 'zs', 'age': 20, 'gender': '男'}
"""
在调用的时候
*l 相当实参 a,b,c 顺序参数
**l 相当实参 e=10,f=20 位置参数
abc(*l,**d): 可以传递任意参数
"""
def abc(*l, **d):
print(l)
print(d)
abc(10, 20, a=30, b=40) # 位置参数必须在关键字参数的前面
点击查看代码
(10, 20)
{'a': 30, 'b': 40}
"""函数的返回值"""
def abc(a, b):
return a + b
b = abc(3, 10)
print(b)
"""返回多个值"""
def abc():
return 1,3,4,5
b = abc() # b存放的是一个元组
print(type(b),b)
"""return 会中断函数,直接返回"""
def abc(b):
for i in range(1, b):
if i % 3 == 0:
return i # 中断函数
b = b + 5
return b
a = abc(5)
print(a)
点击查看详情
13
<class 'tuple'> (1, 3, 4, 5)
3
a = 10/3
print(round(a, 2)) # 四舍五入
a = pow(2, 8) # 求幂
print(a)
a = 2 ** 4 # 和 pow(2,4) 一样的效果
print(a)
lst = [1, 2, 3, 4, 5]
a = sum(lst) # 对列表求和
b = min(lst) # 求列表中的最小值
c = max(lst) # 求最大值
print("sum=", a)
print("min=", b)
print("max=", c)