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) 字典是另一种可变容器模型,且可存储任意类型对象. ...
随机推荐
- Swift实现JSON转Model - HandyJSON使用讲解
背景: 很多时候,我们从服务端请求下的数据都是Json格式,我们需要拿这些数据显示到我们的UI界面. 因此,我们的做法基本都会先将json转为方便使用的数据模型,或者也可以直接转字典解决. 在OC中, ...
- (转载)Oracle10g 数据泵导出命令 expdp 使用总结(一)
原文链接:http://hi.baidu.com/edeed/item/890626ef6f6d9d265b2d646f Oracle10g 数据泵导出命令 expdp 使用总结(二)Oracle10 ...
- React 实践项目 (二)
React在Github上已经有接近70000的 star 数了,是目前最热门的前端框架.而我学习React也有一段时间了,现在就开始用 React+Redux 进行实战! React 实践项目 (一 ...
- 【Linux相识相知】bash的基础特性
命令历史 shell进程会记录用户提交执行过的命令 可以是用history查看: [root@localhost dev]# history ss -tnl ifconfig vi /etc/sysc ...
- geotrellis使用(二十九)迁移geotrellis至1.1.1版
目录 前言 升级过程 总结 一.前言 由于忙着安装OpenStack等等各种事情,有半年的时间没有再亲密的接触geotrellis,甚至有半年的时间没能畅快的写代码.近来OpenStac ...
- React环境配置
现在开始配置一个基础项目. 创建项目文件夹:C:\Users\Danny\Desktop\React npm init 创建package.json文件 下面的所有安装,都是--save-dev,因为 ...
- Java List Remove时要注意的细节
1.如果你是在遍历的时候去remove一个对象 for(int i = 0, length = list.size(); i<length; i++){} 这种遍历需要每次remove时,对i- ...
- ServerSocket简单例题
ServerSocket 简单例题: package com.kaige123.net; /* *凯哥 */ import java.io.FileInputStream; import java.i ...
- Ambari安装之Ambari安装前准备(CentOS6.5)(一)
优秀博客 <Ambari--大数据平台的搭建利器> Ambari安装前准备 (一)机器准备 192.168.80.144 ambari01 (部署Ambari-server和Mirro ...
- Android - FragmentTabHost 与 Fragment 制作页面切换效果
使用 FragmentTabHost 与 Fragment 制作页面切换效果 API 19 TabHost已经不建议使用了.用 FragmentTabHost 来代替TabHost.实际上 Fragm ...