前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Python中偏函数的语法和推导方法示例

Python中偏函数的语法和推导方法示例

原创
作者头像
python自学网
发布于 2021-12-05 06:40:44
发布于 2021-12-05 06:40:44
55900
代码可运行
举报
运行总次数:0
代码可运行

Python偏函数和我们之前所学习的函数传参中的缺省参数有些类似,但是在实际应用中还是有所区别的,下面通过模拟一个场景一步一步的推导先来看看偏函数的语法形成。

需求:新生入学,需要录入学生姓名和所在班级,大多数学生都是同一个班级。

第一步:一个一个学生资料录入;

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
print('我是%s,我在%d班' % ('张三', 2))
print('我是%s,我在%d班' % ('李四', 2))
print('我是%s,我在%d班' % ('王五', 2))

第二步:使用函数来录入;

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
def new_stu(name, cla):
    print('我是%s,我在%d班' % (name, cla))
new_stu('张三', 2)
new_stu('李四', 2)
new_stu('王五', 2)

第三步:如果某个班级学生偏多,可以使用缺省参数来完成

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
def new_stu(name, cla=2):
    print('我是%s,我在%d班' % (name, cla))
new_stu('张三', 3)
new_stu('李四')
new_stu('王五')

通过上面三步之后其实我们已经实现偏函数的效果了,这里再补充一点通过functools模块实现普通函数的偏函数效果,注意内部注释。

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
# 4.通过functools修改第2步的函数
import functools
new_student = functools.partial(new_stu, cla=2) # 通过partial指定new_stu里面的cla是偏爱参数
new_student(name='张三', cla=5)
new_student('李四') # 被偏爱的参数最好放在后面,否则按顺序传容易出错
new_student(name='王五') # 先把name传给new_stu函数

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档