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 04 Python
python基础练习之几个简单的游戏
Nov 10 Python
详解Python requests 超时和重试的方法
Dec 18 Python
解决python中的幂函数、指数函数问题
Nov 25 Python
Python字节单位转换实例
Dec 05 Python
Pycharm小白级简单使用教程
Jan 08 Python
Python numpy多维数组实现原理详解
Mar 10 Python
Python环境下安装PyGame和PyOpenGL的方法
Mar 25 Python
Python 利用OpenCV给照片换底色的示例代码
Aug 03 Python
拿来就用!Python批量合并PDF的示例代码
Aug 10 Python
python打包生成so文件的实现
Oct 30 Python
Pycharm制作搞怪弹窗的实现代码
Feb 19 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
php不使用copy()函数复制文件的方法
2015/03/13 PHP
PHP使用mysql_fetch_row查询获得数据行列表的方法
2015/03/18 PHP
Yii2 rbac权限控制之菜单menu实例教程
2016/04/28 PHP
PHP设计模式之装饰器模式定义与用法详解
2018/04/02 PHP
js 距离某一时间点时间是多少实现代码
2013/10/14 Javascript
jQuery中$.fn的用法示例介绍
2013/11/05 Javascript
jQuery实现菜单式图片滑动切换
2015/03/14 Javascript
Javascript中arguments和arguments.callee的区别浅析
2015/04/24 Javascript
JavaScript简单修改窗口大小的方法
2015/08/03 Javascript
常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全(推荐)
2016/12/20 Javascript
js addDqmForPP给标签内属性值加上双引号的函数
2016/12/24 Javascript
jQuery插件HighCharts实现的2D回归直线散点效果示例【附demo源码下载】
2017/03/09 Javascript
Angular实现的进度条功能示例
2018/02/18 Javascript
vue 使用eventBus实现同级组件的通讯
2018/03/02 Javascript
js 实现在2d平面上画8的方法
2018/10/10 Javascript
Django+vue跨域问题解决的详细步骤
2019/01/20 Javascript
在小程序中推送模板消息的实现方法
2019/07/22 Javascript
JS数组push、unshift、pop、shift方法的实现与使用方法示例
2020/04/29 Javascript
NodeJS和浏览器中this关键字的不同之处
2021/03/03 NodeJs
[04:49]期待西雅图之战 2016国际邀请赛中国区预选赛WINGS战队赛后采访
2016/06/29 DOTA
[06:48]DOTA2-DPC中国联赛2月26日Recap集锦
2021/03/11 DOTA
Windows安装Python、pip、easy_install的方法
2017/03/05 Python
查看Django和flask版本的方法
2018/05/14 Python
TensorFlow Session会话控制&amp;Variable变量详解
2018/07/30 Python
python实现身份证实名认证的方法实例
2019/11/08 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
CSS3实现时间轴特效
2020/11/02 HTML / CSS
HTML5之SVG 2D入门7—SVG元素的重用与引用
2013/01/30 HTML / CSS
装潢设计专业推荐信模板
2013/11/26 职场文书
开学典礼策划方案
2014/05/28 职场文书
中标通知书格式
2015/04/17 职场文书
体育教师教学随笔
2015/08/15 职场文书
2016银行求职自荐信
2016/01/28 职场文书
CSS的class与id常用的命名规则
2021/05/18 HTML / CSS
Java如何实现树的同构?
2021/06/22 Java/Android
Python中递归以及递归遍历目录详解
2021/10/24 Python