Python 打基础一定要吃透这 5 个内置函数

STM32H723串口接收全为0 & CAN错误中断问题 STM32H723串口接收全为0 和 叠加的导致CAN错误问题 阅读详情

出品:Python数据之道

作者:Peter

编辑:Lemon

本文中介绍 Python 中 5 个高阶内置函数,它们不仅能够帮助我们了解 Python 的数据结构,同时也能加快数据处理的速度,体会到 Python 的强大。

  • zip

  • filter

  • enumberate

  • reversed/reverse

  • eval

1、zip

引例

首先,我们先来学习一个非常强大的内置函数: zip。通过一个例子来引出 zip的使用:

需求:如果我们想对两个列表对应位置上的数字一一求和,该如何操作?

x = [1,2,3]
y = [4,5,6]
  1. for循环实现

  1. zip实现

具体实现过程:

查看使用文档

help(zip)

zip接受一个序列

  1. 空序列

  1. 接受列表、元组、集合、字符串

zip接受多个序列

接受列表、元组、集合、字符串的任意组合:

## 列表、元组、集合、字符串的随意组合
a = [1,2,3]
b = {4,5,6}
c = (7,8,9)
d = "zip"
print(list(zip(a,b)))  # 列表+集合
print("------------")
print(list(zip(a,c)))  # 列表+元组
print("------------") 
print(list(zip(b,d)))  # 集合+元组
print("------------")
print(list(zip(c,d)))  # 元组+字符串
print("------------")
print(list(zip(a,b,c)))  # 列表+集合+字符串

zip处理不同长度

上面的多个元素的长度都是相同的,下面的例子来展示 zip处理不同长度的序列。

我们发现:zip会选择最小长度的序列进行合并

2、filter

filter本身是 过滤的意思:就是将那些不符合我们要求的数据直接过滤舍弃掉,剩下那些符合要求的数据。

查看帮助文档

将序列中的每个元素传递给函数,执行的结果为 True或者 False,将结果为 True的元素放入新的列表中。

返回的是 filter对象。如果想看具体的数据,需要使用 list来展开。

help(filter)

使用自定义函数

使用匿名函数lambda

直接筛选条件

list(filter(lambda x: x>1, [0,1,9,-4,8,100]))

具体结果为:

[9, 8, 100]

字符筛选

list(filter(lambda x: x!="shenzhen", ["guangzhou","shanghai","shenzhen","changsha"])) # 筛选不满足要求的字符串
['guangzhou', 'shanghai', 'changsha']

3、enumerate

enumerate是 Python的一个重要内置函数,返回的是可迭代序列的元素和下标,对列表、集合、字典、字符串等都适用的。

在 Python的 for循环中使用的非常广泛。

如果想查看结果,需要使用list函数来进行显示。

查看帮助文档

help(enumerate)

用于列表、集合、元组、字符串、字典

4、reversed

reversed()函数是返回序列 seq的反向访问的迭代器。

参数可以是 列表,元组,字符串,不改变原对象均可。下面通过具体的例子来说明:

查看帮助文档

help(reversed)

用于列表

用于元组

用于字符串

4.1 reverse

用于对列表中的元素反向排序,方法没有返回值,只是对列表中的元素进行反向排序

只针对列表!!!!!!

demo

集合不能用reverse

方法只针对列表

# 集合反向
set1 = {1,"python",3,"java",5}
set1.reverse()  # 集合没有reverse方法,该方法只针对列表

5、eval

语法

eval 直接返回传入字符串的表达式的结果,语法为:

eval(expression[, globals[, locals]])

下面通过几个例子来直接讲解该方法的使用

例子

字符串和列表、字典、集合的转化

带上参数

三个参数的意义:

  • expression :字符串

  • globals :变量作用域,全局命名空间;如果被提供,则必须是一个字典对象

  • locals :变量作用域,局部命名空间;如果被提供,可以是任何映射对象

当它和globals中有重复的部分时,locals里的定义会覆盖掉globals中的:当globals和locals中有冲突的部分时,locals有决定权。

如果locals没有被 提供的话,则默认为globals。

理解expressions

s = "abcd"
eval(s)

# eval先将‘s’的引号剥去,得到s.不可以进行计算,开始查找s是否是一个变量的名字,查找到s是一个字符串,所以程序输出了s中的内容
s = "abcd"  
eval('s')
# 结果为:
'abcd'

单引号和双引号区别

最外层一定要使用单引号

作者简介

Peter,硕士毕业僧一枚,从电子专业自学Python入门数据行业,擅长数据分析及可视化。喜欢数据,坚持跑步,热爱阅读,乐观生活。个人格言:不浮于世,不负于己

个人站点:www.renpeter.cn,欢迎常来小屋逛逛

------- End -------

文末福利

各位猿们,还在为记不住API发愁吗,哈哈哈,最近发现了国外大师整理了一份Python代码速查表和Pycharm快捷键sheet,火爆国外,这里分享给大家。

这个是一份Python代码速查表

下面的宝藏图片是2张(windows && Mac)高清的PyCharm快捷键一览图

怎样获取呢?可以添加我们的AI派团队的程序媛姐姐

一定要备注【高清图】哦

????????????????????

➕我们的程序媛小姐姐微信要记得备注【高清图】哦

STM32F407中文手册 STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。 立即下载

相关推荐

ArcGIS插值可视化气象数据

前言 地图底图的制作和气象数据的预处理见我上两篇博客 ArcGIS精美中国地图制作(详解) python处理日值气象数据 在前面我们已经将日值的地温数据处理成了年均地温,添加了站点经纬度坐标并导出为excel格式。 得到如下数据: 导入数据 在Arcmap中 文件-添加XY数据 将年均地温和站点位置数据导入。 注意:excel表格的格式要另存为97-2003工作簿形式,否则会有"arcgi...

江北20190411的博客 2万+

Python中单引号和双引号有什么区别?

在Python中使用单引号或双引号是没有区别的,都可以用来表示一个字符串。但是这两种通用的表达方式可以避免出错之外,还可以减少转义字符的使用,使程序看起来更清晰。 举两个例子: 1、包含单引号的字符串 定义一个字符串my_str,其值为: I’m a student,可以用转义字符和不用转义字符\ my_str = 'I\ 'm a student' my_str = "I'm a student" 2、包含双引号的字符串 定义一个字符串my_str,其值为: Jason said “I like you

阿江江的博客 1万+

绕过Google Play:获取Expo Go安卓APK的实用指南

本文为国内安卓开发者提供了绕过Google Play商店获取Expo Go APK的实用指南。针对无法访问Google Play的痛点,详细介绍了通过官方GitHub Releases、可信第三方网站(如APKMirror)及APK下载器等多种安全获取途径,并重点讲解了APK安装、安全验证(核对签名)及常见连接问题的排查方法,帮助开发者顺利开启React Native开发之旅。

weixin_29006701的博客 580

python 单引号 双引号 区别_三石的Python入门不入土

有点想学习Python,学了几天感觉动力不足,加上笔记记得有点懒散。挖出长了灰的“公号宝宝”,你的第一次将要献给Python。(就不介绍Python是什么了) 学习了几天Python初步,给我印象比较深刻的是其简洁性;结合其功能强大的特点来看,更能体会到这种跨平台脚本语言的“精干”。相比于C/C++(暂时只学了这两种),Python减少了很多符号的运用,并很好地运...

weixin_39622710的博客 1703

PSI5协议技术文档与驱动开发指南

• 供电与数据复用:ECU通过双绞线为传感器提供稳压(典型值5V-11V),同时检测线路电流变化实现数据传输。• 同步信号:ECU发送3.5V电压脉冲(上升沿触发传感器响应),用于时序同步。• 安全气囊:PSI5-P模式实现多碰撞传感器同步采样(响应时间<10ms)• CRC-3(3位):ASIL-B以上功能安全要求(如动力总成传感器)• 奇偶校验(1位):适用于低安全等级场景(如PSI5-P10P模式)• 典型应用:PSI5-P(并行总线)、PSI5-U(通用总线)

u012733413的博客 2871

Floyd算法在社交网络中的应用:如何找到六度人脉的最短路径?

本文探讨了Floyd算法在社交网络分析中的核心应用,特别是如何利用该算法高效计算任意两人之间的最短路径,从而量化“六度人脉”理论。文章通过构建微型社交网络模型,详细拆解了Floyd算法的动态规划原理与代码实现,并展示了如何从计算出的最短路径距离矩阵中挖掘节点中心性、识别社群等关键洞察,为社交推荐、影响力分析等场景提供技术支撑。

blockchain9miner的博客 1004

python中单引号和双引号的区别_python中单引号和双引号的区别

在Python当中表达字符串既可以使用单引号,也可以使用双引号,那两者有什么区别吗?python单引号和双引号的区别简单来说,在Python中使用单引号或双引号是没有区别的,都可以用来表示一个字符串。但是这两种通用的表达方式,除了可以简化程序员的开发,避免出错之外,还有一种好处,就是可以减少转义字符的使用,使程序看起来更简洁,更清晰。举个两个例子:1、包含单引号的字符串假如你想定义一个字符串my_...

weixin_29923451的博客 1万+

URDF模型转换实战:解决SolidWorks到Gazebo的五大常见问题

本文详细解析了从SolidWorks导出URDF模型到Gazebo仿真过程中常见的五大问题及解决方案,包括插件安装、坐标系建立、Link与Joint配置等关键步骤。通过实战经验分享,帮助机器人仿真工程师高效完成模型转换,确保Gazebo仿真准确性。

weixin_29052717的博客 446

Python中单引号和双引号的区别

Python是一门广泛应用于各种领域的编程语言,它有着简单易学的语法以及丰富的功能。在Python中,单引号和双引号都可以用来表示字符串,但是它们之间有着一些不同的特点和用法。在本篇博客中,我们将探讨Python中单引号和双引号的区别。

weixin_43107388的博客 8524

Android 12,通过JNI写framebuff实现白板书写加速

Android 书写加速

448313096@qq.com 1204

COMSOL介电弹性体数值仿真指南:预拉伸圆形DEA的稳态变形分析(I)

本期博客是《COMSOL介电弹性体数值仿真指南》系列博客中的一期。聚焦于介电弹性体驱动器(DEA)中最为经典的预拉伸圆形DEA驱动器构型,对其物理特性及数值仿真总体方案进行介绍与讨论。

忘了面孔的Batou 455

python中单引号、双引号的区别

(1)如果需要表示 Let’ s fly 这个字符串,则 单引号:‘Let\’ s fly’ 双引号:“Let’ s fly” 注意单引号中的转义字符,如果这种需要前加转移字符的字符很多,字符串就会很难看。 (2)如果要表示 I like “python”! 这个字符串,则 单引号: ‘I like “python”!’ 双引号: “I like \“python\”!” 为什么会这样呢?如果字符串使用单引号表示,则字符串中的双引号会被python当成普通字符处理。反过来也一样。 所以单引号和双引号pyt

岛田悠米 2594

unitree-G1外接 USB 麦克风完整配置指南

首先,将type-c麦克风插入G1机器人的USB口后,记录下USB麦克风的卡号(card)和设备号(device),通常显示为 card 1: Device [USB Audio Device]

m0_47999117的博客 601

【Python基础】Python 打基础一定要吃透这 5 个内置函数

出品:Python数据之道作者:Peter编辑:Lemon本文中介绍 Python 中 5 个高阶内置函数,它们不仅能够帮助我们了解 Python 的数据结构,同时也能加快数据处理的速度...

fengdu78的博客 259

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【python】打基础一定要吃透这 5 个内置函数

文章目录1、zip2、filter3、enumerate4、reversed4.1 reverse5、eval 1、zip 首先,我们先来学习一个非常强大的内置函数: zip。通过一个例子来引出 zip的使用: 需求:如果我们想对两个列表对应位置上的数字一一求和,该如何操作? x = [1,2,3] y = [4,5,6] for循环实现 zip实现 具体实现过程: 查看使用文档 help(zip) zip接受一个序列 空序列 接受列表、元组、集合、字符串 zip接受多个序列 接

pipi_peng的博客 143

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Python打基础一定要吃透这68个内置函数

内置函数就是Python给你提供的,拿来直接用的函数,比如print.,input等。 截止到python版本3.6.2 ,python一共提供了68个内置函数,具体如下???? abs() dict() help() min() setattr() all() dir() hex() next() slice() any() divmod()

qq_40907977的博客 234

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

打基础一定要吃透这12类 Python 内置函数

点击上方“测试开发社区”,选择“加为星标”https://www.cnblogs.com/pypypy/p/12011506.html内置函数就是python给你提供的, 拿来直接用的函...

zouhui1003it的专栏 239

Python初学者必须吃透的 69 个内置函数

所谓内置函数,就是Python提供的, 可以直接拿来直接用的函数,比如大家熟悉的print,range、input等,也有不是很熟,但是很重要的,如enumerate、zip、join等,Python内置的这些函数非常精巧且强大的,对初学者来说,经常会忽略,但是偶尔会碰到,我也是用了一段时间python之后才发现,哇还有这么好的函数,每个函数都非常经典,而且经过严格测试,使用内置函数,不用自己闭门造车,并且代码简洁易读了很多,真是方便又实用,值得花时间进行体系化研究学习。初学者的代码之所以写的不简洁,不是因

Python学习与数据挖掘 4095

【Python基础】学习Python 一定要吃透这 5 个内置函数

出品:Python数据之道作者:Peter编辑:Lemon本文中介绍 Python 中 5 个高阶内置函数,它们不仅能够帮助我们了解 Python 的数据结构,同时也能加快数据处理的速度...

fengdu78的博客 284

吃透这68个 Python 内置函数,你的 Python 基础就算非常扎实了

内置函数就是Python给你提供的, 拿来直接用的函数,比如print,input等。截止到python版本3.6.2 ,一共提供了68个内置函数,具体如下👇和数字相关1. 数据类型2. 进制转换3. 数学运算和数据结构相关1. 序列2. 数据集合3. 相关内置函数和作用域相关和迭代器生成器相关字符串类型代码的执行输入输出内存相关文件操作相关模块相关帮 助调用相关查看内置属性bool : 布尔型(True,False)int : 整型(整数)

wly55690的博客 1267
上一篇: 收藏 | 万字长文带你理解Pytorch官方Faster RCNN代码
下一篇: 一份火爆国外的PyCharm快捷键和Python代码速查表
Wang_AI
博客等级 码龄12年 997粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值