19.4.26笔记和作业
作者:互联网
1.函数的特性
eg1:
a=5
def hanshu1():
return a+5
a=6
def hanshu2():
return a+5
a=7
def hanshu3():
return a+5
print(hanshu1())
print(hanshu2())
print(hanshu3())
输出值均为12,因为程序执行下来a的值为7
eg2:
def dengji(name,age,sex):
print('我叫',name)
print('年龄',age)
print('性别',sex)
x=dengji(name='吴敏荣',age=18,sex='女')#输出name,age,sex的内容
eg3:
def qiuhe(a,b):
c=a+b
print(c)
qiuhe(3,6)
qiuhe(2,b=6)
qiuhe(a=6,2)##形式参数,要写在位置参数后面
eg4:
def hanshu(a,b,*c):##在函数中添加星号,是以元祖的形式输出,不在函数中添加星号,在外面添加,是以打散的形式输出。
print(a)
print(b)
print(c)
for i in c:
print(i)
hanshu(1,2,3,4,5)
def hanshu(a,b,c):
print(a)
print(b)
print(c)
x=(1,2,3)
hanshu(*x)
print(*x)
**kwargs,输出为元祖类型
def kb(a,**kwargs):
print(kwargs)
kb(1,name='张三',age=19,sex='男')
kb(1,name='张三',age=19,sex='男',address='广州')
x=[1,2,3,4]
print(x.remove(4))
print(x)
#递归函数,就是函数之间的调用
def hanshu(a,b):
c=a+b
return c
def hanshu2(a,b,c):
return a-b,hanshu(a,b)*c
a=hanshu2(4,5,6)
print(a)
做一个阶乘函数
def jiecheng(n):
if n==1:
return 1
else:
return n*jiecheng(n-1)
a=jiecheng(5)
print(a)
##定义一个斐波那契
def fbnq(n):
if n==1 or n==2:
return 1
else:
return fbnq(n-1)+fbnq(n-2)
for i in range(1,11):
print('第',i,'个月兔子的个数',fbnq(i))
猴子吃桃,一共一百个,一天吃一半,到第六天还剩多少个
def hzct(n,gs):
if n==1:
return gs/2
else:
return hzct(n-1,gs/2)
a=hzct(6,100)
print(a)
第六次弹起的高度,以及走过的总距离
gaodu=100
jl=0
i=1
while i<=6:
jl=jl+gaodu+gaodu/2##
gaodu/=2
print('第',i,'次弹起,高度',gaodu,'距离',jl)
i+=1
井有20米深,蜗牛白天爬三米,晚上下降一米
day=0
d=0
while True:
day+=1
d+=3
if d>=20:
break
else:
d-=1
print(day)
写一个斐波那契数列的函数
def fbnq(n):
if n==1 or n==2:
return 1
else:
return fbnq(n-1)+fbnq(n-2)
for x in range(1,11):
print('第',x,'天的兔子个数:',fbnq(x))
作业
1、写一个函数实现斐波那契数列
def func(num):
a = 1
b = 1
if num <= 2:
print(a, a + b, end='')
else:
while num > 0:
print(b, end=' ')
a, b = b, a + b
num -= 1
func(4)
2.计算任意多个数字的和
需求
(1).定义一个函数 sum_numbers,可以接收的 任意多个整数
(2).功能要求:将传递的 所有数字累加 并且返回累加结果
def sum_numbers(*args):
num = 0
# 遍历 args 元组顺序求和
for n in args:
num += n
return num
print(sum_numbers(1, 2, 3))
3.使用递归,计算 1 + 2 + … num 的结果
def sum_numbers(num):
# 1. 出口
if num == 1:
return 1
temp = sum_numbers(num - 1)
return num + temp
result = sum_numbers(100)
print(result)
标签:19.4,26,return,name,笔记,fbnq,num,print,def 来源: https://blog.csdn.net/peter_fanxing/article/details/89577510