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中实现最小二乘法思路及实现代码
Jan 04 Python
浅谈Python2、Python3相对路径、绝对路径导入方法
Jun 22 Python
Python3的高阶函数map,reduce,filter的示例详解
Jul 23 Python
通过 Python 和 OpenCV 实现目标数量监控
Jan 05 Python
pytorch+lstm实现的pos示例
Jan 14 Python
关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)
Feb 20 Python
Pycharm内置终端及远程SSH工具的使用教程图文详解
Mar 19 Python
python怎么对数字进行过滤
Jul 05 Python
Python利用Pillow(PIL)库实现验证码图片的全过程
Oct 04 Python
python里glob模块知识点总结
Jan 05 Python
解决Pytorch dataloader时报错每个tensor维度不一样的问题
May 28 Python
Pandas数据类型之category的用法
Jun 28 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下清空字符串中的HTML标签的代码
2010/09/06 PHP
使用session判断用户登录用户权限(超简单)
2013/06/08 PHP
解析PHP中的unset究竟会不会释放内存
2013/07/18 PHP
php使用mkdir创建多级目录入门例子
2014/05/10 PHP
总结PHP中数值计算的注意事项
2016/08/14 PHP
PHP中字符串长度的截取用法示例
2017/01/12 PHP
dojo学习第一天 Tab选项卡 实现
2011/08/28 Javascript
关于onScroll事件在IE6下每次滚动触发三次bug说明
2011/09/21 Javascript
用JQUERY增删元素的代码
2012/02/14 Javascript
jQuery中$.fn的用法示例介绍
2013/11/05 Javascript
使用js显示当前时间示例
2014/03/02 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
JavaScript File分段上传
2016/03/10 Javascript
getElementById().innerHTML与getElementById().value的区别
2016/10/27 Javascript
浅谈JavaScript的闭包函数
2016/12/08 Javascript
BootStrap select2 动态改变值的方法
2017/02/10 Javascript
Angularjs单选改为多选的开发过程及问题解析
2017/02/17 Javascript
微信小程序实现tab切换效果
2017/11/21 Javascript
JavaScript遍历数组和对象的元素简单操作示例
2019/07/09 Javascript
NodeJS多种创建WebSocket监听的方式(三种)
2020/06/04 NodeJs
Python装饰器decorator用法实例
2014/11/10 Python
解决Pycharm无法import自己安装的第三方module问题
2018/05/18 Python
实例介绍Python中整型
2019/02/11 Python
python导入不同目录下的自定义模块过程解析
2019/11/18 Python
Python实现搜索算法的实例代码
2020/01/02 Python
Python Scrapy图片爬取原理及代码实例
2020/06/12 Python
Python如何实现大型数组运算(使用NumPy)
2020/07/24 Python
python中@property的作用和getter setter的解释
2020/12/22 Python
解决python的空格和tab混淆而报错的问题
2021/02/26 Python
英国领先的体验日提供商:Buyagift
2019/04/19 全球购物
英国历史最悠久的DJ设备供应商:DJ Finance、DJ Warehouse、The DJ Shop
2019/09/04 全球购物
励志演讲稿范文
2014/04/29 职场文书
2014年团支部工作总结
2014/11/17 职场文书
读《皮囊》有感:理解是对他人的最大的善举
2019/11/14 职场文书
Element-ui Layout布局(Row和Col组件)的实现
2021/12/06 Vue.js
《战锤40K:暗潮》跳票至9月 公布新宣传片
2022/04/03 其他游戏