下载此文档

python函数进阶.pdf


文档分类:IT计算机 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍
: .
函数进阶
= a - b
a = a - b
解法 3 —— Python 专有,利用元组
a, b = b, a
03. 函数的参数 进阶
. 不可变和可变的参数
问题 1:在函数内部,针对参数使用 赋值语句,会不会影响调用函数时
传递的 实参变量? —— 不会!
• 无论传递的参数是 可变 还是 不可变
◦ 只要 针对参数 使用 赋值语句,会在 函数内部 修改 局部变量的引
用,不会影响到 外部变量的引用
def demo(num, num_list):print("函数内部")
# 赋值语句
num = 200
num_list = [1, 2, 3]
print(num)
print(num_list)
print("函数代码完成")
gl_num = 99
gl_list = [4, 5, 6]
demo(gl_num, gl_list)
print(gl_num)
print(gl_list)
问题 2:如果传递的参数是 可变类型,在函数内部,使用 方法 修改了
数据的内容,同样会影响到外部的数据
def mutable(num_list):
# num_list = [1, 2, 3]
([1, 2, 3])
print(num_list)
gl_list = [6, 7, 8]
mutable(gl_list)
print(gl_list)
面试题 —— +=
• 在 python 中,列表变量调用 += 本质上是在执行列表变量的 extend
方法,不会修改变量的引用
def demo(num, num_list):
print("函数内部代码")
# num = num + num
num += num
# (num_list) 由于是调用方法,所以不会修改变量的引用# 函数执⾏结束后,外部数据同样会发生变化
num_list += num_list
print(num)
print(num_list)
print("函数代码完成")
gl_num = 9
gl_list = [1, 2, 3]
demo(gl_num, gl_list)
print(gl_num)
print(gl_list)
缺省参数
• 定义函数时,可以给 某个参数 指定一个默认值,具有默认值的参数就叫
做 缺省参数
• 调用函数时,如果没有传入 缺省参数 的值,则在函数内部使用定义函数
时指定的 参数默认值
• 函数的缺省参数,将常见的值设置为参数的缺省值,从而 简化函数的调

• 例如:对列表排序的方法
gl_num_list = [6, 3, 9]
# 默认就是升序排序,因为这种应用需求更多
()
print(gl_num_list)
# 只有当需要降序排序时,才需要传递 `reverse` 参数
(reverse=True)
print(gl_num_list)
指定函数的缺省参数
• 在参数后使用赋值语句,可以指定参数的缺省值
def print_info(name, gender=True):
gender_text = "男生"if not gender:
gender_text = "⼥生"
print("%s 是 %s" % (name, gender_text))
提示
1. 缺省参数,需要使用 最常见的值 作为默认值!

python函数进阶 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小267 KB
  • 时间2022-04-24