目录
- 定义函数
- 无参函数
- 有参函数
- 函数的返回值
- 位置参数和默认参数
- 可变参数
- 关键字参数
正文
- 定义函数
函数定义的语法格式如下:
def 函数名(参数列表):
"函数文档字符串(即函数说明)"
函数体
[return 返回值列表]
(1) 函数定义以def保留字开头,后接函数名称和圆括号()。
(2) 参数列表放在括号中,可以有零个、一个或多个参数。函数定义里的参数,我们称为形式参数,简称为形参。
(3) 函数内容以冒号起始,函数体格式必须缩进。
(4) 当需要返回值时,用return语句返回列表的值,否则函数可以没有return语句,或者只有return,没有返回值列表,这时函数结果返回None。
- 无参函数
【例】打印前10个自然数。
def printNum(): #定义无参函数printNum
for i in range(1,11): #遍历循环1 ~10的整数列表
print(i,end='') #输出前10个自然数
printNum() #调用函数printNum
- 有参函数
【例】计算任意两个数的和。
def add(num1,num2): #定义有参函数add
sum=num1+num2
return sum #返回函数计算结果
a,b=eval(input('输入任意两个数据'))
s=add(a,b) #调用add()函数,并将函数返回结果赋值给sum
print('sum=',s)
- 函数的返回值
return只能返回单值,但值可以存在多个元素
def show():
return[2,4,6,8,10]
print(type(show()) #输出返回结果的类型
print(show())
#运行结果:
#<class 'list'> #返回的是列表类型
#[2,4,6,8,10] #返回的列表元素值
def show():
return 2,4,6
print(type(show())) #输出返回结果的类型
print(show())
#运行结果:
#<class 'tuple'> #返回的是元组类型
#(2,4,6) #返回的元组元素值
- 位置参数和默认参数
def person(name,age,city='Beijing',job='coder'):
print(name,age,city,job)
person('Amely',21,job='teacher')
#运行结果:
#Amely 21 Beijing teacher
#设置默认参数时,位置参数在前,默认参数在后,否则Python的解释器会报错。
- 可变参数
可变参数是指传入的参数个数是可变的,可以是0个或任意多个
def fun(var,*args):
print('var:',var)
print('args:',args)
fun(10,20,30,40,50)
#运行结果:
#var:10
#args:(20,30,40,50)
可变参数在函数调用时自动组装为一个元组
- 关键字参数
允许传入0个或任意多个含参数名的参数,关键字参数在函数内部自动组装为一个字典
def fun(var,**kw): #参数定义的顺序必须是:位置参数,默认参数和关键字参数。
print('var:',var)
print('kw:',kw)
fun(10,a=20,b=30,c=40,d=50)
#运行结果:
#var:10
#kw:{'a':20,'b':30,'c':40,'d':50}
【例】编写函数,接收一个正偶数为参数,输出量的素数,并且这两个素数之和等于原来的正偶数。
【代码如下】
import math
def IsPrime(n):
m=int(math.sqrt(n))+1
for i in range(2,m):
if n%i==0
return False
return True
def demo(n):
if n>0 and n%2==0:
for i in range(2,int(n//2)+1):
if i%2==1 and IsPrime(i) and IsPrime(n-i):
print(i,'+',n-i,'=',n)
demo(60)
知识点整理不易,如果对你有帮助,给个免费的赞支持一下呗!感谢阅读!