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类定义的讲解
Nov 01 Python
python 2.6.6升级到python 2.7.x版本的方法
Oct 09 Python
PyTorch上实现卷积神经网络CNN的方法
Apr 28 Python
Pandas 合并多个Dataframe(merge,concat)的方法
Jun 08 Python
python3.X 抓取火车票信息【修正版】
Jun 19 Python
Python如何调用外部系统命令
Aug 07 Python
图文详解Django使用Pycharm连接MySQL数据库
Aug 09 Python
numpy ndarray 取出满足特定条件的某些行实例
Dec 05 Python
Python进阶之迭代器与迭代器切片教程
Jan 29 Python
Python confluent kafka客户端配置kerberos认证流程详解
Oct 12 Python
解决pytorch 保存模型遇到的问题
Mar 03 Python
pandas DataFrame.shift()函数的具体使用
May 24 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
缅甸的咖啡简史
2021/03/04 咖啡文化
PHP+javascript液晶时钟
2006/10/09 PHP
DISCUZ 论坛管理员密码忘记的解决方法
2009/05/14 PHP
PHP session有效期session.gc_maxlifetime
2011/04/20 PHP
php 随机排序广告的实现代码
2011/05/09 PHP
PHP中的随机性 你觉得自己幸运吗?
2016/01/22 PHP
php实现微信扫码自动登陆与注册功能
2016/09/22 PHP
PHP面向对象程序设计之对象生成方法详解
2016/12/02 PHP
php及codeigniter使用session-cookie的方法(详解)
2017/04/06 PHP
ajax无刷新动态调用股票信息(改良版)
2008/11/01 Javascript
LazyLoad 延迟加载(按需加载)
2010/05/31 Javascript
JavaScript判断用户是否对表单进行了修改的方法
2015/03/18 Javascript
如何使用jquery easyui创建标签组件
2015/11/18 Javascript
基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法
2016/05/10 Javascript
判断JS对象是否拥有某属性的方法推荐
2016/05/12 Javascript
BootStrap 智能表单实战系列(十)自动完成组件的支持
2016/06/13 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
jQuery获取同级元素的简单代码
2016/07/09 Javascript
nodejs搭建本地服务器并访问文件的方法
2017/03/03 NodeJs
vue.js+Echarts开发图表放大缩小功能实例
2017/06/09 Javascript
微信小程序ajax实现请求服务器数据及模版遍历数据功能示例
2017/12/15 Javascript
关于Vue源码vm.$watch()内部原理详解
2019/04/26 Javascript
详解Vue.js 响应接口
2020/07/04 Javascript
[01:19]2014DOTA2国际邀请赛 采访TITAN战队ohaiyo 能赢DK很幸运
2014/07/12 DOTA
Python之日期与时间处理模块(date和datetime)
2017/02/16 Python
使用Django清空数据库并重新生成
2020/04/03 Python
总结html5自定义属性有哪些
2020/04/01 HTML / CSS
Holiday Inn中国官网:IHG旗下假日酒店预订
2018/04/08 全球购物
机械工程师的岗位职责
2013/11/17 职场文书
招商业务员岗位职责
2013/12/16 职场文书
同学聚会老师邀请函
2014/01/28 职场文书
模特大赛策划方案
2014/05/28 职场文书
中学清明节活动总结
2014/07/04 职场文书
大雁塔导游词
2015/02/04 职场文书
2015年会计年终工作总结
2015/05/26 职场文书
Jupyter Notebook 如何修改字体和大小以及更改字体样式
2021/06/03 Python