列表

基本操作
>>>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. pandas教程1:pandas数据结构入门

    pandas是一个用于进行python科学计算的常用库,包含高级的数据结构和精巧的工具,使得在Python中处理数据非常快速和简单.pandas建造在NumPy之上,它使得以NumPy为中心的应用很容 ...

  2. CentOS升级Python到2.7版本

    查看python的版本 1 python -V Python 2.4.3 1.先安装GCC 1 yum -y install gcc 2.下载Python-2.7.2 1 wget http://py ...

  3. Command "python setup.py egg_info" failed with error code 10

    1:今天系统重装以后,下载了新的版本的python3.6.1.然后想通过pycurl模块测试URL,突然发现windows10下我无法通过pip安装pycurl模块了,报错内容如下 Collectin ...

  4. Java电器商场小系统--简单的java逻辑

    //商场类public class Goods { int no; //编号 String name; //商品名称 double price; //商品价格 int number; //商品数量 / ...

  5. 分享一个废弃已久的插件架构 (.Net)

    框架介绍 1:将插件暴露的页面数据接口复用到任何 WebForm和Mvc 架构的系统. 2:插件可在线卸载,发布,更新. 3:插件可分布式 独立 部署. 4:插件之间完全解耦,通过Url跳转 相互不需 ...

  6. Luogu 1349 广义斐波那契数列(递推,矩阵,快速幂)

    Luogu 1349 广义斐波那契数列(递推,矩阵,快速幂) Description 广义的斐波那契数列是指形如\[A_n=p*a_{n-1}+q*a_{n-2}\]的数列.今给定数列的两系数p和q, ...

  7. C# TryParse()用法

    形式(以decimal为例): decimal.TryParse(str1,out num1) 功能:将str1转化成decimal类型,若转化成功,将值赋给num1,并返回true; 若转化失败,返 ...

  8. java基础03 位运算符

    位运算是对整数的二进制位进行相关操作,详细运算如下: 非位运算值表 A ~A 1 0 0 1 与位运算值表 A B A&B 1 1 1 1 0 0 0 1 0 0 0 0 或位运算值表 A B ...

  9. linux系统编程之文件IO

    1.打开文件的函数open,第一个参数表示文件路径名,第二个为打开标记,第三个为文件权限 代码: #include <sys/types.h> #include <sys/stat. ...

  10. web开发之负载均衡的简单架构

    负载均衡 负载均衡的核心思想就是:请求分担 最简单的配置: 一台负载均衡服务器 两台webserver服务器 两台webserver服务器需要配置相同的服务器环境,设置相同的域名指向 负载均衡服务器需 ...