1.定义函数
1.1自定义函数
#def 函数名(传入的参数): #(参数可写可不写)
# 执行的额语句(所有的语句都可以)
def printname():
a='11'
return a #将会得到返回值,并结束函数,如果函数里没有写return,那么默认返回值为空
printname() #函数的调用
print(printname()) #print的时候将得到返回的结果
1.2参数位置
def nameage(name,age): #自定义函数(形参)
name1=name
age1=age
return '%s今年%d'%(name1,age1)
print(nameage('小明','13')) #实参(参数有多少,写多少)
全局变量与局部变量
(函数不要套用)
局部变量不能再全局里使用,而全局变量可以
a=1 #全局变量能在任何地方使用
def bianliang(i):
a=i #局部变量(不能够在外部使用)
return a
print(bianliang(2))
print(a)
例题1: 自定义一个函数,返回值得是一个动物的名字与只数
name=input('请输入:')
num=int(input('请输入:'))
def dongwu(i,m):
name1=i
num1=m
return '%s有%d只'%(name1,num1)
print(dongwu(name,num))
1.3必须参数
def name1(str):
a=str
return a
print(name1(12)) #必须传入的参数,如果不传入将报错
1.4关键字参数
#关键字参数
def person(age,name):
return name,age
print(person(15,'小明'))#能够一一对应得到结果叫做关键字
1.5默认参数
#默认参数必须放在非迷人参数后面
def person1(name,age=10): #age=10叫做默认参数
return name,age
print(person1('小红')) #默认参数可以不用传参(不会报错)
1.6可变参数
#可变参数*
def keb(name,*age): #将超出的参数放置元祖中返回值
return name,age
print(keb('a',12,13,14))
#可变参数**
def keb2(name1,**age1): #将超出的参数以字典的形式返回
return name1,age1
print(keb2('b',c=12,b=13))
例题:封装一个函数,做一个计算器小程序(输入两个数,进行加减乘除)
def js(num1,num2,f):
if f=='+':
a=num1+num2
elif f=='-':
a=num1-num2
elif f=='*':
a=num1*num2
elif f=='/':
a=num1/num2
else:
print('输入错误')
return a
print(js(21,19,'/'))