首页 / 面试 / 撩课-Python面试宝典-第七篇
撩课-Python面试宝典-第七篇
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了撩课-Python面试宝典-第七篇,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2538字,纯文字阅读大概需要4分钟。
内容图文
![撩课-Python面试宝典-第七篇](/upload/InfoBanner/zyjiaocheng/847/5ad73120731947709e216375d41a17bf.jpg)
一. 函数的返回值的概念,语法以及注意事项?
- 场景
当我们通过某个函数, 处理好数据之后, 想要拿到处理的结果 - 语法
def 函数():
函数体
return 数据
- 注意事项
3.1 return 后续代码不会被执行
3.2 只能返回一次
3.3 如果想要返回多个数据, 可先把多个数据包装成一个集合, 整体返回- 列表
- 元组
- 字典
- …
二. 在实际开发的过程中, 你是如何给一个函数添加描述信息的?
- 场景
当我们编写三方函数, 为了方便他人使用, 就需要描述清楚我们所写的函数功能以及使用方式等信息 - 定义格式
直接在函数体的最上面, 添加三个双引号对注释
def 函数():
''' 这里写帮助信息 '''
- 查看函数使用文档
help(函数) - 保命经验
一般函数的描述, 需要说明如下几个信息- 函数的功能
- 参数
- 含义
- 类型
- 是否可以省略
- 默认值
- 返回值
- 含义
- 类型
def sum(num1, num2=0):
"""
负责计算两个数值的和, 并返回给外界
:param num1: 第一个参数, 参数类型: int / float, 不能被省略, 无默认值
:param num2: 第二个参数, 参数类型: int / float, 能被省略, 默认值: 0
:return: 计算结果
"""
return num1 + num2
三. 偏函数的概念和意义?
- 概念&场景
当我们写一个参数比较多的函数时, 如果有些参数, 大部分场景下都是某一个固定值, 那么为了简化使用, 就可以创建一个新函数, 指定我们要使用的函数的某个参数, 为某个固定的值; 这个新函数就是"偏函数"
- 语法
- 方式1
自己写一个新的 - 方式2
借助functools模块的partial函数
import functools
newFunc = functools.partial(函数, 特定参数=偏爱值)
- 场景
- 问题
int(x, base=10)
将一个数字字符转换成整型数据时, 默认是按10进制的数据进行处理x
如果想按2进制进行处理x, 需要这么调用: int(x, 2)
如果需要经常使用这个2进制处理x转换, 每次都写参数值2太麻烦- 解决
方式1:方式2:def int2(x): return int(x, 2)
import functools int2 = functools.partial(int, base=2) print(int2("110")) # 6
四. 高阶函数的定义以及应用场景举例?
- 概念
当一个函数A的参数, 接收的又是另一个函数时, 则把这个函数A称为是"高阶函数" - 例如
sorted函数 就是一个高阶函数person1 = {"name": "sz", "score": "60"} person2 = {"name": "sz2", "score": "90"} person3 = {"name": "sz3", "score": "80"} persons = [person1, person2, person3] def sort_key(dic): return dic["score"] print(sorted(persons, key=sort_key)) # 打印结果如下: # [{'name': 'sz', 'score': '60'}, {'name': 'sz3', 'score': '80'}, {'name': 'sz2', 'score': '90'}]
五. 解释下匿名函数?
- 概念
也称为 “lambda函数”
顾名思义, 就是指没有名字的函数 - 语法
lambda 参数1, 参数2… : 表达式 - 限制
- 只能写一个表达式
- 不能直接return
- 表达式的结果就是返回值
- 所以, 只适用于一些简单的操作处理
- 应用场景
一些临时性的使用 - 案例
person1 = {"name": "sz", "score": "60"}
person2 = {"name": "sz2", "score": "90"}
person3 = {"name": "sz3", "score": "80"}
persons = [person1, person2, person3]
# 此处key对应的函数, 就没有必要单独定义出来
# 因为就它自己用, 又很简单
print(sorted(persons, key=lambda dic: dic["score"]))
内容总结
以上是互联网集市为您收集整理的撩课-Python面试宝典-第七篇全部内容,希望文章能够帮你解决撩课-Python面试宝典-第七篇所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。