Python容器类型公共方法总结


Posted in Python onAugust 19, 2020

以下公共方法支持列表,元组,字典,字符串。

内置函数

Python 包含了以下内置函数:

函数 描述 备注
len(item) 计算容器中元素个数
del(item) 删除变量 del 有两种方式
max(item) 返回容器中元素最大值 如果是字典,只针对 key 比较
min(item) 返回容器中元素最小值 如果是字典,只针对 key 比较

注意:

字符串比较符合以下规则: "0" < "A" < "a"

切片

切片使用索引值来限定范围,从一个大的字符串中切出小的字符串。

列表和元组都是有序的集合,都能够通过索引值获取到对应的数据。

字典是一个无序的集合,是使用键值对保存数据。

格式

字符串[开始索引:结束索引:步长]

注意点:

1、指定的区间属于左闭右开型

可以理解为:

[开始索引, 结束索引)

开始索引 >= 范围 < 结束索引

从起始位开始,到结束位的前一位结束(不包含结束位本身)。

2、从头开始,开始索引数字可以省略,冒号不能省略。

3、到末尾结束,结束索引,数字可以省略,冒号不能省略。

4、步长默认为1,如果连续切片,数字和冒号都可以省略。

在 Python 中不仅支持顺序索引,同时还支持倒序索引。

所谓倒序索引就是从右向左计算索引,最右边的索引值是 -1,依次递减。

我们来通过几个例子来演练下。

num_str = "0123456789"

# 1. 截取从 2 ~ 5 位置的字符串
print(num_str[2:6])
# 2345

# 2. 截取从 2 ~ 末尾的字符串
print(num_str[2:])
# 23456789

# 3. 截取从开始 ~ 5 位置的字符串
print(num_str[:6])
# 012345

# 4. 截取完整的字符串
print(num_str[:])
# 0123456789

# 5. 从开始位置,每隔一个字符截取字符串
print(num_str[::2])
# 02468

# 6. 从索引 1 开始,每隔一个取一个
print(num_str[1::2])
# 13579

# 倒序切片
# -1 表示倒数第一个字符
print(num_str[-1])

# 7. 截取从2 ~ 末尾 -1的字符串
print(num_str[2:-1])
# 2345678

# 8. 截取字符串末尾两个字符
print(num_str[-2:])
# 89

# 9. 字符串的逆序
print(num_str[::-1])
# 9876543210

运算符

合并

支持字符串,列表,元组。

print([1, 2] + [3, 4])
# [1, 2, 3, 4]

重复

支持字符串,列表,元组。

print(["Hi!"] * 4)
# ['Hi!', 'Hi!', 'Hi!', 'Hi!']

判断元素是否存在

支持字符串,列表,元组,字典。

print(3 in (1, 2, 3))
# True

in 和 not in 被称为成员运算符。

in 在对字典操作时,判断的是字典的键。

判断元素不存在

支持字符串,列表,元组,字典。

print(4 not in (1, 2, 3))
# True

元素比较

支持字符串,列表,元组。

print((1, 2, 3) < (2, 2, 3))
# True

完整的 for 循环语法

在 Python 中完整的 for 循环的语法如下:

for 变量 in 集合:
循环体代码
else:
没有通过 break 退出循环,循环结束后,会执行的代码

应用场景

在迭代遍历嵌套的数据类型时,例如一个列表包含了多个字典。

需求:要判断某一个字典中是否存在指定的值。如果存在,提示并且退出循环,如果不存在,在循环整体结束后,得到一个统一的提示。

students = [
 {"name": "阿土",
  "age": 20,
  "gender": True,
  "height": 1.7,
  "weight": 75.0},
 {"name": "小美",
  "age": 19,
  "gender": False,
  "height": 1.6,
  "weight": 45.0},
]

find_name = "阿土"

for stu_dict in students:
 print(stu_dict)
 # 判断当前遍历的字典中姓名是否为find_name
 if stu_dict["name"] == find_name:
  print("找到了")
  # 如果已经找到,直接退出循环,就不需要再对后续的数据进行比较
  break
else:
 print("没有找到")
print("循环结束")
# {'name': '阿土', 'age': 20, 'gender': True, 'height': 1.7, 'weight': 75.0}
# 找到了
# 循环结束

以上就是Python容器类型公共方法总结的详细内容,更多关于Python容器类型公共方法的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
学习python处理python编码问题
Mar 13 Python
Python操作Sql Server 2008数据库的方法详解
May 17 Python
python实现指定文件夹下的指定文件移动到指定位置
Sep 17 Python
使用django-guardian实现django-admin的行级权限控制的方法
Oct 30 Python
基于OpenCV python3实现证件照换背景的方法
Mar 22 Python
python实现中文文本分句的例子
Jul 15 Python
Python 3.6 中使用pdfminer解析pdf文件的实现
Sep 25 Python
Python中xml和dict格式转换的示例代码
Nov 07 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 Python
python进度条显示之tqmd模块
Aug 22 Python
python 多线程共享全局变量的优劣
Sep 24 Python
利用Python优雅的登录校园网
Oct 21 Python
python3将变量输入的简单实例
Aug 19 #Python
手把手教你将Flask应用封装成Docker服务的实现
Aug 19 #Python
python实现每天自动签到领积分的示例代码
Aug 18 #Python
numpy中生成随机数的几种常用函数(小结)
Aug 18 #Python
在 Python 中使用 MQTT的方法
Aug 18 #Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
Aug 18 #Python
Python 处理日期时间的Arrow库使用
Aug 18 #Python
You might like
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
2009/04/24 PHP
浅析php与数据库代码开发规范
2013/08/08 PHP
php操作mysql数据库的基本类代码
2014/02/25 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
2014/06/23 PHP
PHP设计模式之工厂模式详解
2017/10/24 PHP
PHP命令空间namespace及use的用法小结
2017/11/27 PHP
js写一个弹出层并锁屏效果实现代码
2012/12/07 Javascript
jquery中获取id值方法小结
2013/09/22 Javascript
Lua表达式和控制结构学习笔记
2014/12/15 Javascript
使用AngularJS实现可伸缩的页面切换的方法
2015/06/19 Javascript
关于JS中prototype的理解
2015/09/07 Javascript
基于jQuery ligerUI实现分页样式
2016/09/18 Javascript
利用JS实现简单的瀑布流加载图片效果
2017/04/22 Javascript
element-ui带输入建议的input框踩坑(输入建议空白以及会闪出上一次的输入建议问题)
2019/01/15 Javascript
jQuery--遍历操作实例小结【后代、同胞及过滤】
2020/05/22 jQuery
[02:32]“虐狗”镜头慎点 2016国际邀请赛中国区预选赛现场玩家采访
2016/06/28 DOTA
[51:29]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
[01:20:47]DOTA2-DPC中国联赛 正赛 Ehome vs Magma BO3 第一场 1月19日
2021/03/11 DOTA
python中cPickle用法例子分享
2014/01/03 Python
Python中的测试模块unittest和doctest的使用教程
2015/04/14 Python
Python实现的rsa加密算法详解
2018/01/24 Python
python 对key为时间的dict排序方法
2018/10/17 Python
提升Python程序性能的7个习惯
2019/04/14 Python
python实现nao机器人身体躯干和腿部动作操作
2019/04/29 Python
python中几种自动微分库解析
2019/08/29 Python
jupyter notebook 多环境conda kernel配置方式
2020/04/10 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
Lookfantastic法国官网:英国知名美妆购物网站
2017/10/28 全球购物
巴西电子产品购物网站:Saldão da Informática
2018/01/09 全球购物
adidas澳大利亚官方网站:adidas Australia
2018/04/15 全球购物
YOOX台湾:意大利奢侈品电商
2018/10/13 全球购物
建筑设计师岗位职责
2013/11/18 职场文书
2019年世界儿童日宣传标语
2019/11/22 职场文书
SQL Server 数据库实验课第五周——常用查询条件
2021/04/05 SQL Server
NASA 机智号火星直升机拍到了毅力号设备碎片
2022/04/29 数码科技