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}

时间: 2024-10-12 21:01:43

python学习之列表和字典的相关文章

Python学习:列表和字典

列表和字典是最常用的数据类型. 列表: 字符串不易取出每个值: >>> name="xiaobai xiaohong xiaoming" >>> name 'xiaobai xiaohong xiaoming' 列表存储信息量大,存取容易,更改方便: >>> name_list=["xiaobai","xiaohong","xiaoming"] >>> n

python学习笔记4:字典

python学习笔记4:字典 总结:字典是可变变量: 字典是不排序的,所以不能像列表,元组,字符串一样,切片 1.定义字典dict  --花括号{},字典的只是key-value形式 比如:stu={'name':'zhangying','age':18,'score'=99} 2.key取值,get()方法取值 1)dictname[key] , 取key对应的value值,如果不存在,报错 2)dictname.get(key) , 取key对应的value值,如果不存在,返回none:还可

Python学习_列表解析和Lambda表达式

1.根据要求创建列表threes_and_fives(列表值包括1到15中能够被3或者5正常的数) threes_and_fives=[x for x in range(1,16) if x%3==0 or x%5==0] 2.lambda表达式实例(剔除掉列表中的"X") garbled = "IXXX aXXmX aXXXnXoXXXXXtXhXeXXXXrX sXXXXeXcXXXrXeXt mXXeXsXXXsXaXXXXXXgXeX!XX" message

python学习第六天 - 列表(数组)

python当中的数组与java,c不太一样,数组相当于一个列表,一个列表中可以有,整型,字符串,浮点型等等. 定义格式如下: >>> list = [123,'小甲鱼',3.14] >>> list [123, '小甲鱼', 3.14] 介绍几种向列表中添加元素的方法 1.append() :向列表中增加新的元素,一次只能添加一个元素,默认添加到列表的末尾 >>> list.append('黑夜') >>> list [123, '

python学习---数据类型---列表

Python学习 1.列表 [] 1.1)列表是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目. 1.2)列表时可变数据类型 1.3)列表的组成:用[]标示列表,包含多个用逗号隔开的数字或者字符串 举例:    list[1,2,3]        list1['aaa',123,'"qwsx"] 空列表 list[] 注意:在定义时,元祖只有一个值时,要在其后面加逗号:而列表只有一个值时不用加任何符号 2. 列表的操作 2.1)列表的重新赋值   (以list1[

python学习day-3 列表 元祖 字典

一.列表list a.基础 1. li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], "alex", True] 中括号括起来:,分割每个元素:列表中的元素可以是数字,字符串,列表,布尔值......:列表可以嵌套 (他就是个集合,内部放置任何东西) 2.可以进行索引,切片取值 li = [1, 12, 9, "age", ["

[Python日记-2]列表-元组-字典-if-for

今天学习了列表,元组,字典相关知识,真的琐碎.我应该是学了好几遍了,刚开始是充满激情的,学到一个方法就迫不及待地去尝试,现在也平和了.好了,总结下. 1. 列表 Python中用方括号([])来表示列表,并用逗号来分隔其中的元素.要访问列表元素,列表的名称[索引]. 索引可以是负值,如将索引指定为-1,可让Python返回最后一个列表元素.可以在不明确列表长度的情况下,访问最后的元素. 1.1 列表中添加元素的方法: 1 Lis = [] 2 3 Lis.title() #使列表中每个元素的首字

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

python的元组.列表.字典数据类型是很python(there python is a adjective)的数据结构.这些结构都是经过足够优化后的,所以如果使用好的话,在某些area会有很大的益处. 元组         个人认为就像java的数组,python中的元组有以下特性: 任意对象的有序集合,这条没啥说的,数组的同性: 通过偏移读取: 一旦生成,不可改变: 固定长度,支持嵌套 来例子吧: python 代码 >>> (0, 'haha', (4j, 'y')) (0, '

Python学习之列表的内部实现详解

本文和大家分享的主要是列表在 CPython中的实现,一起来看看吧,希望对大家学习python有所帮助. Python 中的列表非常强大,看看它的内部实现机制是怎么样的,一定非常有趣. 下面是一段 Python 脚本,在列表中添加几个整数,然后打印列表. >>> l = [] >>> l.append(1) >>> l.append(2) >>> l.append(3) >>> l [1, 2, 3] >>