小学课后服务 Python少儿编程 提高篇:6-函数进阶 课件 (15张PPT)

资源下载
  1. 二一教育资源

小学课后服务 Python少儿编程 提高篇:6-函数进阶 课件 (15张PPT)

资源简介

(共15张PPT)
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
少儿编程课
函数进阶
无参函数的定义和使用
计算机中的函数是这样的:
=
如果:
那么:
函数的好处:
代码复用,减少重复劳动(写的时候省事儿,
改的时候也省事儿)
=
下面我们就来看一下Python中的函数的定义和使用


线





先来看一个练习:
输出3遍Hello
输出5遍World
输出4遍Hello
输出5遍World
输出3遍Hello
输出3遍World
这个有很多种解决方案,比如使用n多个print,这也是最麻烦的方法
1
利用循环,我们可以避免了重复性的print
for x in range(3):
print('Hello')
for x in range(5):
print('World')
for x in range(4):
print('Hello')
for x in range(5):
print('World')
for x in range(3):
print('Hello')
for x in range(3):
print('World')
2
利用方法,我们则可以避免重复性的使用循环
# 函数print_hello的定义
def print_hello():
for x in range(3):
print('Hello')
# 函数print_world的定义
def print_world():
for x in range(5):
print('World')
# 函数print_hello的使用
print_hello()
# 函数print_world的使用
print_world()
for x in range(4):
print('Hello')
# 函数print_world的使用
print_world()
# 函数print_hello的使用
print_hello()
for x in range(3):
print('World')
有参函数的定义和使用
我们还可以定义有参的函数,进一步优化这个过程
1
现在函数print_hello的定义是这样的
2
定义形式参数后,函数的调用也放生了变化
# 函数print_hello的使用
print_hello(3)
print_hello(5)
def print_hello():
for x in range(3):
print('Hello')
想打印任意多个(比如n)次的Hello,可以这样:
def print_hello():
for x in range(n):
print('Hello')
但是这样会有语法问题,要想使用n,就要先定义:
def print_hello(n):
for x in range(n):
print('Hello')
此时函数定义上的参数n就成为形式参数
与形式参数对应,这里的3、5称为实际参数
3
此时程序就变成了这样:
def print_hello(n):
for x in range(n):
print('Hello')
def print_world(n):
for x in range(n):
print('World')
print_hello(3)
print_world(5)
print_hello(4)
print_world(5)
print_hello(3)
print_world(3)
另外,函数中的参数还可以多个
1
比如我们定义一个打印字符串的函数:
2
这样,程序就变成了这样:
def print_str(n, s):
for x in range(n):
print(s)
此时调用时,就需要对应形参传入2个实参:
print_str(3, 'Hello')
# 函数print_hello的定义
def print_str(n, s):
for x in range(n):
print(s)
# 函数print_str的调用
print_str(3, 'Hello')
print_str(5, 'World')
print_str(4, 'Hello')
print_str(5, 'World')
print_str(3, 'Hello')
print_str(3, 'World')
Python中的形参,不仅可以是一个变量,还可以是一个赋值语句,表示默认参数
1
比如我们将print_str改成这样:
2
如果需要,可以指定多个默认参数
此时就表示s默认为Hello,也即s不传参是就表示Hello
print_str(3)
def print_str(n, s='Hello'):
for x in range(n):
print(s)
输出结果:
Hello
Hello
Hello
def print_str(n=3, s='Hello'):
for x in range(n):
print(s)
此时就有两个默认参数了
print_str()
输出结果:
Hello
Hello
Hello
最后,不仅形参可以是赋值语句,实参也可以,表示关键字参数
1
我们改造print_str如下:
2
当然,这些参数可以配套使用
这里的**kw就是关键字参数,它允许使用时传入赋值
语句,也即键值对,也可以直接传入一个dict
def print_str(n, s, **kw):
for x in range(n):
if kw.get('filter') == 'upper':
print(s.upper())
elif kw.get('filter') == 'lower':
print(s.lower())
else:
print(s)
print_str(3, 'Hello', filter='upper')
def print_str(n, s='Hello', **kw):
for x in range(n):
if kw.get('filter') == 'upper':
print(s.upper())
elif kw.get('filter') == 'lower':
print(s.lower())
else:
print(s)
fileter_dict = {'filter': 'upper'}
print_str(3, 'Hello', **fileter_dict)
函数的返回值
最后,我们来看看函数的返回值
1
定义函数,可以计算任意两个数的相加之和:
2
此时可以用变量接收函数的返回
def get_sum(a, b):
return a + b
# 函数使用return返回了计算结果
# 在使用函数时就可以赋值给一个变量
# 此时变量就表示计算结果了
c = get_sum(2, 5)
print(c)
d = get_sum(3, 1)
print(d)
总结
Summary
函数的定义和使用

函数的位置参数、默认参数、关键字参数

函数的返回值

Thanks!

展开更多......

收起↑

资源预览