python学习之列表和字典
列表
基本操作
>>>len([1,3,4])
3
>>>[1,2,3]+[4,5,6] +号两边必须是相同类型
[1,2,3,4,5,6]
>>>['ni!']*4
['ni!','ni!','ni!','ni!']
>>>str([1,2])+"34"
'[1,2]34'
>>>[1,2]+list("34")
[1,2,3,4]
列表迭代和解析
>>>3 in [1,2,3]
true
>>>for x in [1,2,3]:
print (x,end=' ');
1,2,3
>>> res = [c *4 for c in 'spam'];
>>>res
['ssss','pppp','aaaa','mmmm']
索引 分片和矩阵
>>>l = ['aa','bb','cc']
>>>l[2]
'cc'
>>>l[-2]
'bb'
>>>l[1:]
['bb','cc']
列表是可变的,他们支持原处改变列表对象的操作
索引与分片的赋值
>>>l = ['aa','bb','cc']
>>>l[1]='dd'
>>>l
['aa','dd','cc']
>>>l[0:2]=['xx','yy']
>>>l
['xx','yy','cc']
列表方法的调用
>>>l.append('aa')
>>>l
['xx','yy','cc','aa']
>>>l.sort()
>>>l
['aa','cc','xx','yy']
>>>l.sort(key=str.lower) 按字符串的小写排序
['aa','cc','xx','yy']
>>>l.sort(key=str.lower,reverse = true) 翻转
>>>l
['yy','xx','cc','aa']
>>>l = [1,2]
>>>l.extend([3,4,5]) 扩展
>>>l
[1,2,3,4,5]
>>>l.pop() 推出最后一个元素
>>>l
[1,2,3,4]
>>>l.reverse() 翻转
>>>l
[4,3,2,1]
>>>l = []
>>>l.append(1) 添加数据
>>>l.append(2)
>>>l
[1,2]
>>>l = ['aa','bb','cc']
>>>l.index('aa') 索引
0
>>>l.insert(1,'xx') 插入
>>>l
['aa','xx','bb','cc']
>>>l.remove('xx') 移除
>>>l
['aa','bb','cc']
>>>l.pop(1) 移除索引元素
>>>l
['aa','cc']
其他常见的列表操作
>>>l = ['aa','bb','cc']
>>>del l[0] 删除列表元素
>>>l
['bb','cc']
>>>del l[1:] 删除列表分片
>>>l
['aa']
>>>l = ['aa','bb','cc']
>>>l[1:] = [] 删除列表分片
>>>l
['aa']
字典
除了列表外,字典也许就是python中最灵活的数据结构了
字典的基本操作
>>>d = {'spam':2,'ham':1,'eggs':3}
>>>d['spam'] 通过key取值
2
>>>d
{'spam':2,'ham':1,'eggs':3}
>>>len(d) 长度
3
>>>'ham'in d 成员
true
>>>list(d.keys()) 将字典的key转换成list
['eggs','ham','spam']
原处修改字典
>>>d['ham'] = ['grill','bake','fry'] 赋值
>>>d
{'spam':2,'ham':['grill','bake','fry'],'eggs':3}
>>>del d['eggs'] 删除
>>>d
{'spam':2,'ham':['grill','bake','fry']}
其他的字典方法
>>>d = {'spam':2,'ham':1,'eggs':3}
>>>list(d.values())
[3,1,2]
>>>list(d.items())
[('eggs',3),('ham',1),('spam',2)]
>>>d.get('spam')
2
>>>print(d.get('toast'))
None
>>>d.get('toast',88) 默认值
88
字典的update方法类似于合并 相同的覆盖
>>>d2 = {'toast':4,'muffin':5,'eggs':3}
>>>d.update(d2)
>>>d
{'spam':2,'ham':1,'eggs':5,'toast':4,'muffin':5}
>>>d.pop('muffin')
{'spam':2,'ham':1,'eggs':5,'toast':4}
python学习之列表和字典的更多相关文章
- Python学习三|列表、字典、元组、集合的特点以及类的一些定义
此表借鉴于他人 定义 使用方法 列表 可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner', ...
- 关于Python学习之 列表与字典
列表 列表是Python中最具灵活性的有序集合对象类型. # 列表迭代和解析 >>> res = [c*4 for c in 'Spam'] >>> res ['S ...
- 【python学习笔记】4.字典:当索引不好用时
[python学习笔记]4.字典:当索引不好用时 字典是python中唯一内建的map类型 创建: key可以为任何不可改变的类型,包括内置类型,或者元组,字符串 通过大括号: phonebook={ ...
- Python学习02 列表 List
Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...
- python字符串、列表和字典的说明
python字符串.列表和字典的说明 字符串.列表.字典 字符串的作用存储一段数据信息.例如 info = '我爱北京天安门' ,在调取的时候可以直接调取,灵活方便,print(info) 就可以把刚 ...
- Python学习笔记----列表、元组和字典的基础操作
文章目录 一.列表的基本操作 1.1 修改列表中的某个数据 1.2 获取某个元素的返回值(返回的是索引) 1.3 在列表中插入新的元素 1.4 删除列表中的元素 1.5 +和* 二.内置的函数和方法 ...
- Python 1.2 列表和字典基础
一. List创建.索引.遍历和内置增删函数 1.列表是Python的内置可变对象,由Array实现,支持任意类型的添加.组合和嵌套. L = [] # list declare L = [1, 1. ...
- [转载]Python 元组、列表、字典、文件
python的元组.列表.字典数据类型是很python(there python is a adjective)的数据结构.这些结构都是经过足够优化后的,所以如果使用好的话,在某些area会有很大的益 ...
- Python学习(11)字典
目录 Python 字典 访问字典中的值 修改字典 删除字典元素 字典键的特性 字典内置函数&方法 Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. ...
随机推荐
- html网页的兼容性和css优先级
网页不仅是在一个浏览器上显示的网页,也要多考虑其他浏览器的兼容性,火狐.谷歌.搜狗等浏览器总体来说,网页的变化不大,最主要的是还是IE浏览器. color:red\9; IE6 IE7 IE8 ...
- 【知识整理】这可能是最好的RxJava 2.x 入门教程(五)
这可能是最好的RxJava 2.x入门教程系列专栏 文章链接: 这可能是最好的RxJava 2.x 入门教程(一) 这可能是最好的RxJava 2.x 入门教程(二) 这可能是最好的RxJava 2. ...
- seajs源码阅读
乘着周日有点时间,阅读一下玉伯大神的源码. seajs的源码写得真的很好,很是佩服,工整美观不愧是大神,造福百姓. 说起seajs不得不说,AMD和CMD的区别. CMD 推崇依赖就近,AMD 推崇 ...
- svo笔记
使用 要想在ros中有更多的debug信息,要在global.h中把ros log的级别设为debug,最简单的就是把SVO_DEBUG_STREAM(x)改成ROS_INFO_STREAM(x) # ...
- EF查询百万级数据的性能测试--多表连接复杂查询
相关文章:EF查询百万级数据的性能测试--单表查询 一.起因 上次做的是EF百万级数据的单表查询,总结了一下,在200w以下的数据量的情况(Sql Server 2012),EF是可以使用,但是由于 ...
- .NET C#到Java没那么难,DB篇
前言 .NET C#到Java没那么难,都是面向对象的语言,而且语法还是相似的,先对比一下开发环境,再到Servlet,再到MVC,都是一样一样的,只是JAVA的配制项比较多而已,只要配好一个,后面都 ...
- Maven入门1-在Eclipse中新建Maven Web项目
在eclipse中新建Maven Web项目 很多时候开发效率低下,大部分原因是IDE环境不熟悉.配置不会配置:因此在学习一项技能之前,有必要对基本的环境配置有所了解,正所谓磨刀不误砍柴工.这篇文章主 ...
- OCP 11G 实验环境安装文档 ( RedHat5.5 + Oracle11g )
RedHat5.5 linux下Oracle11g软件安装 一.配置虚拟机 为了创建和配置虚拟机,你需要添加硬件设备如磁盘和cpu,在你开始安装之前,创建一个windows目录作为存放虚拟机的目录 目 ...
- 【转载】CANoe 入门 Step by step系列(一)基础应用
来源:http://www.cnblogs.com/dongdonghuihui/archive/2012/09/26/2704611.html CANoe是Vector公司的针对汽车电子行业的总线分 ...
- [补] winpcap编程——EAP协议与EAPSOCKET实现
EAP SOCKET Implement Mentohust 时间:20161115,大二上 ## 准备. 什么是 EAP 协议 ? WIKI : https://en.wikipedia.org/w ...