python的dict,set,list,tuple应用详解


Posted in Python onJuly 24, 2014

本文深入剖析了python中dict,set,list,tuple应用及对应示例,有助于读者对其概念及原理的掌握。具体如下:

1.字典(dict)

dict 用 {} 包围
dict.keys(),dict.values(),dict.items()
hash(obj)返回obj的哈希值,如果返回表示可以作为dict的key
del 或 dict.pop可以删除一个item,clear清除所有的内容
sorted(dict)可以把dict排序
dict.get()可以查找没存在的key,dict.[]不可以
dict.setdefault() 检查字典中是否含有某键。 如果字典中这个键存在,你可以取到它的值。 如果所找的键在字典中不存在,你可以给这个键赋默认值并返回此值。
{}.fromkeys()创建一个dict,例如:

{}.fromkeys(('love', 'honor'), True) =>{'love': True, 'honor': True}

不允许一个键对应多个值
键值必须是哈希的,用hash()测试
一个对象,如果实现_hash()_方法可以作为键值使用

2.集合(set)

集合是一个数学概念,用set()创建

set.add(),set.update.set.remove,添加更新删除,-= 可以做set减法
set.discard 和 set.remove不同在于如果删除的元素不在集合内,discard不报错,remove 报错
< <= 表示 子集,> >=表示超集
| 表示联合 & 表示交集 - 表示差集 ^ 差分集

3.列表(list)

列表是序列对象,可包含任意的Python数据信息,如字符串、数字、列表、元组等。列表的数据是可变的,我们可通过对象方法对列表中的数据进行增加、修改、删除等操作。可以通过list(seq)函数把一个序列类型转换成一个列表。

append(x) 在列表尾部追加单个对象x。使用多个参数会引起异常。
count(x) 返回对象x在列表中出现的次数。
extend(L) 将列表L中的表项添加到列表中。返回None。
Index(x) 返回列表中匹配对象x的第一个列表项的索引。无匹配元素时产生异常。
insert(i,x) 在索引为i的元素前插入对象x。如list.insert(0,x)在第一项前插入对象。返回None。
pop(x) 删除列表中索引为x的表项,并返回该表项的值。若未指定索引,pop返回列表最后一项。
remove(x) 删除列表中匹配对象x的第一个元素。匹配元素时产生异常。返回None。
reverse() 颠倒列表元素的顺序。
sort() 对列表排序,返回none。bisect模块可用于排序列表项的添加和删除。

4.元组(tuple)

tuple=(1,),这是单个元素的元组表示,需加额外的逗号。
tuple=1,2,3,4,这也可以是一个元组,在不使用圆括号而不会导致混淆时,Python允许不使用圆括号的元组。
和列表一样,可对元组进行索引、分片、连接和重复。也可用len()求元组长度。 
元组的索引用tuple[i]的形式,而不是tuple(i)。
和列表类似,使用tuple(seq)可把其它序列类型转换成元组。

Python 相关文章推荐
Python 文件操作实现代码
Oct 07 Python
python开发之文件操作用法实例
Nov 13 Python
python实现unicode转中文及转换默认编码的方法
Apr 29 Python
Python中使用多进程来实现并行处理的方法小结
Aug 09 Python
python实现八大排序算法(2)
Sep 14 Python
在pycharm上mongodb配置及可视化设置方法
Nov 30 Python
解决nohup执行python程序log文件写入不及时的问题
Jan 14 Python
python实现本地批量ping多个IP的方法示例
Aug 07 Python
django中url映射规则和服务端响应顺序的实现
Apr 02 Python
如何配置关联Python 解释器 Anaconda的教程(图解)
Apr 30 Python
PyTorch中clone()、detach()及相关扩展详解
Dec 09 Python
python非标准时间的转换
Jul 25 Python
Python常见数据结构详解
Jul 24 #Python
python海龟绘图实例教程
Jul 24 #Python
python实现绘制树枝简单示例
Jul 24 #Python
python实现进程间通信简单实例
Jul 23 #Python
Python数组条件过滤filter函数使用示例
Jul 22 #Python
Python标准库与第三方库详解
Jul 22 #Python
Python调用C/C++动态链接库的方法详解
Jul 22 #Python
You might like
PHP+Ajax 检测网络是否正常实例详解
2016/12/16 PHP
PHP4和PHP5版本下解析XML文档的操作方法实例分析
2017/05/20 PHP
laravel5.5安装jwt-auth 生成token令牌的示例
2019/10/24 PHP
些很实用且必用的小脚本代码
2006/06/26 Javascript
基于jquery的气泡提示效果
2010/05/31 Javascript
javascript图片相似度算法实现 js实现直方图和向量算法
2014/01/14 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
2014/06/26 Javascript
jQuery获取对象简单实现方法小结
2014/10/30 Javascript
javascript函数声明和函数表达式区别分析
2014/12/02 Javascript
JavaScript使用encodeURI()和decodeURI()获取字符串值的方法
2015/08/04 Javascript
DOM事件阶段以及事件捕获与事件冒泡先后执行顺序(图文详解)
2015/08/18 Javascript
JavaScript ES6中const、let与var的对比详解
2017/06/18 Javascript
JS判断微信扫码的方法
2017/08/07 Javascript
基于substring()和substr()的使用以及区别(实例讲解)
2017/12/28 Javascript
JS使用setInterval实现的简单计时器功能示例
2018/04/19 Javascript
微信小程序实现自定义picker选择器弹窗内容
2020/05/26 Javascript
微信内置开发 iOS修改键盘换行为搜索的解决方案
2019/11/06 Javascript
vue使用swiper.js重叠轮播组建样式
2019/11/14 Javascript
小程序跳转H5页面的方法步骤
2020/03/06 Javascript
在Python中处理字符串之isdecimal()方法的使用
2015/05/20 Python
详解Python对JSON中的特殊类型进行Encoder
2019/07/15 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
pycharm 更改创建文件默认路径的操作
2020/02/15 Python
python爬虫实例之获取动漫截图
2020/05/31 Python
解析python 类方法、对象方法、静态方法
2020/08/15 Python
处理HTML5新标签的浏览器兼容版问题
2017/03/13 HTML / CSS
Html5导航栏吸顶方案原理与对比实现
2020/06/10 HTML / CSS
路政管理专业个人自荐信范文
2013/11/30 职场文书
预备党员的自我评价
2014/03/12 职场文书
高校优秀辅导员事迹材料
2014/05/07 职场文书
董事会决议范本
2015/07/01 职场文书
《认识钟表》教学反思
2016/02/16 职场文书
2016年万圣节家长开放日活动总结
2016/04/05 职场文书
Python激活Anaconda环境变量的详细步骤
2021/06/08 Python
mysql 联合索引生效的条件及索引失效的条件
2021/11/20 MySQL
Mysql如何实现不存在则插入,存在则更新
2022/03/25 MySQL