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中实现从目录中过滤出指定文件类型的文件
Feb 02 Python
python实现在字符串中查找子字符串的方法
Jul 11 Python
详解使用 pyenv 管理多个版本 python 环境
Oct 19 Python
Python给你的头像加上圣诞帽
Jan 04 Python
Python爬虫实现全国失信被执行人名单查询功能示例
May 03 Python
Python设计模式之职责链模式原理与用法实例分析
Jan 11 Python
详解Python locals()的陷阱
Mar 26 Python
浅析Python语言自带的数据结构有哪些
Aug 27 Python
python 监测内存和cpu的使用率实例
Nov 28 Python
windows、linux下打包Python3程序详细方法
Mar 17 Python
使用python从三个角度解决josephus问题的方法
Mar 27 Python
基于django micro搭建网站实现加水印功能
May 22 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的论坛(1)
2006/10/09 PHP
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
2014/07/04 PHP
php生成数字字母的验证码图片
2015/07/14 PHP
Thinkphp5行为使用方法汇总
2017/12/21 PHP
基于php数组中的索引数组和关联数组详解
2018/03/12 PHP
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
js+css在交互上的应用
2010/07/18 Javascript
jquery EasyUI的formatter格式化函数代码
2011/01/12 Javascript
JavaScript中的alert()函数使用技巧详解
2014/12/29 Javascript
AngularJS的内置过滤器详解
2015/05/14 Javascript
javascript获取文档坐标和视口坐标
2015/05/26 Javascript
基于javascript实现listbox左右移动
2016/01/29 Javascript
jQuery树形控件zTree使用小结
2016/08/02 Javascript
详解nodejs微信公众号开发——2.自动回复
2017/04/10 NodeJs
微信分享调用jssdk实例
2017/06/08 Javascript
微信小程序实现发微博功能的示例代码
2020/06/24 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
2020/08/04 Javascript
[01:19:23]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第二场
2018/04/06 DOTA
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
Python实现多线程抓取妹子图
2015/08/08 Python
八大排序算法的Python实现
2021/01/28 Python
Django 前后台的数据传递的方法
2017/08/08 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
2017/11/17 Python
Pycharm使用之设置代码字体大小和颜色主题的教程
2019/07/12 Python
Python 3.8 新功能大揭秘【新手必学】
2020/02/05 Python
python中sklearn的pipeline模块实例详解
2020/05/21 Python
如何基于Python Matplotlib实现网格动画
2020/07/20 Python
Django2.1.7 查询数据返回json格式的实现
2020/12/29 Python
波兰品牌鞋履在线商店:Eastend.pl
2020/01/11 全球购物
触发器(trigger)的功能都有哪些?写出一个触发器的例子
2012/09/17 面试题
反腐倡廉警示教育活动总结
2014/05/05 职场文书
学校个人对照检查材料
2014/08/26 职场文书
Java集成swagger文档组件
2021/06/28 Java/Android
解决Laravel使用验证时跳转到首页的问题
2021/11/17 PHP
解决Mysql中的innoDB幻读问题
2022/04/29 MySQL