列表

基本操作
>>>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学习之列表和字典的更多相关文章

  1. Python学习三|列表、字典、元组、集合的特点以及类的一些定义

    此表借鉴于他人 定义 使用方法 列表 可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner', ...

  2. 关于Python学习之 列表与字典

    列表 列表是Python中最具灵活性的有序集合对象类型. # 列表迭代和解析 >>> res = [c*4 for c in 'Spam'] >>> res ['S ...

  3. 【python学习笔记】4.字典:当索引不好用时

    [python学习笔记]4.字典:当索引不好用时 字典是python中唯一内建的map类型 创建: key可以为任何不可改变的类型,包括内置类型,或者元组,字符串 通过大括号: phonebook={ ...

  4. Python学习02 列表 List

    Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...

  5. python字符串、列表和字典的说明

    python字符串.列表和字典的说明 字符串.列表.字典 字符串的作用存储一段数据信息.例如 info = '我爱北京天安门' ,在调取的时候可以直接调取,灵活方便,print(info) 就可以把刚 ...

  6. Python学习笔记----列表、元组和字典的基础操作

    文章目录 一.列表的基本操作 1.1 修改列表中的某个数据 1.2 获取某个元素的返回值(返回的是索引) 1.3 在列表中插入新的元素 1.4 删除列表中的元素 1.5 +和* 二.内置的函数和方法 ...

  7. Python 1.2 列表和字典基础

    一. List创建.索引.遍历和内置增删函数 1.列表是Python的内置可变对象,由Array实现,支持任意类型的添加.组合和嵌套. L = [] # list declare L = [1, 1. ...

  8. [转载]Python 元组、列表、字典、文件

    python的元组.列表.字典数据类型是很python(there python is a adjective)的数据结构.这些结构都是经过足够优化后的,所以如果使用好的话,在某些area会有很大的益 ...

  9. Python学习(11)字典

    目录 Python 字典 访问字典中的值 修改字典 删除字典元素 字典键的特性 字典内置函数&方法 Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. ...

随机推荐

  1. Swift实现JSON转Model - HandyJSON使用讲解

    背景: 很多时候,我们从服务端请求下的数据都是Json格式,我们需要拿这些数据显示到我们的UI界面. 因此,我们的做法基本都会先将json转为方便使用的数据模型,或者也可以直接转字典解决. 在OC中, ...

  2. (转载)Oracle10g 数据泵导出命令 expdp 使用总结(一)

    原文链接:http://hi.baidu.com/edeed/item/890626ef6f6d9d265b2d646f Oracle10g 数据泵导出命令 expdp 使用总结(二)Oracle10 ...

  3. React 实践项目 (二)

    React在Github上已经有接近70000的 star 数了,是目前最热门的前端框架.而我学习React也有一段时间了,现在就开始用 React+Redux 进行实战! React 实践项目 (一 ...

  4. 【Linux相识相知】bash的基础特性

    命令历史 shell进程会记录用户提交执行过的命令 可以是用history查看: [root@localhost dev]# history ss -tnl ifconfig vi /etc/sysc ...

  5. geotrellis使用(二十九)迁移geotrellis至1.1.1版

    目录 前言 升级过程 总结 一.前言        由于忙着安装OpenStack等等各种事情,有半年的时间没有再亲密的接触geotrellis,甚至有半年的时间没能畅快的写代码.近来OpenStac ...

  6. React环境配置

    现在开始配置一个基础项目. 创建项目文件夹:C:\Users\Danny\Desktop\React npm init 创建package.json文件 下面的所有安装,都是--save-dev,因为 ...

  7. Java List Remove时要注意的细节

    1.如果你是在遍历的时候去remove一个对象 for(int i = 0, length = list.size(); i<length; i++){} 这种遍历需要每次remove时,对i- ...

  8. ServerSocket简单例题

    ServerSocket 简单例题: package com.kaige123.net; /* *凯哥 */ import java.io.FileInputStream; import java.i ...

  9. Ambari安装之Ambari安装前准备(CentOS6.5)(一)

    优秀博客 <Ambari--大数据平台的搭建利器> Ambari安装前准备 (一)机器准备 192.168.80.144   ambari01 (部署Ambari-server和Mirro ...

  10. Android - FragmentTabHost 与 Fragment 制作页面切换效果

    使用 FragmentTabHost 与 Fragment 制作页面切换效果 API 19 TabHost已经不建议使用了.用 FragmentTabHost 来代替TabHost.实际上 Fragm ...