【廖雪峰Python学习笔记】list & tuple & dict &set

列表元组字典集合
创建l = [1, ‘a’, [1, 3], True]t = (1, )d = {‘key’ : ‘value’}s = set([1, 2, 4, 2, 1])
索引l[1]t[0]d.get(‘key’)/
插入l.insert(1, ‘3’) / l.append(‘4’)/d[‘k1’] = ‘v1’s.add(‘9’)
修改l[0] = 4/d[‘k1’] = v/
移除l.pop(0)/d.pop(‘k1’)s.remove(‘1’)
其他list((1,2,3))tuple([1,2,3])‘key’ in ds1 & s2

列表

list
  1. Python内置的一种数据类型
  2. 一种可变的有序集合
  3. 可随时添加或删除其中元素
具体使用
  1. 创建列表
>>> l = []									# len(l) = 0, 空列表
>>> friuts = ['apple', 'banana', 'orange']	# len(friuts) = 3
>>> L = ['a', 12, True, ['a', 'b']]			# len(L) = 4, 元素类型可以不一致
  1. 元素索引
    可正向或者逆向索引
    索引不能越界,最后一个元素的索引为len(l) -1
>>> friuts[0]		
'apple'
>>> friuts[-1]
'orange'
>>> friuts[4]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range
  1. 添加元素
    insert(i,x):列表第i个元素插入x
    append(x):列表末尾插入元素x
>>> friuts.append('lemon')			# l.append(x)
>>> friuts.insert(1,'watermelon')	# l.insert(i,x)
>>> friuts
['apple', 'watermelon','banana', 'orange','lemon']
  1. 删除元素
    pop(i):删除第i个元素
>>> friuts.pop(2)					# l.pop(i)
>>> friuts
['apple', 'watermelon', 'orange','lemon']
  1. 修改元素
>>> friuts[0] = 'none'				# 'apple'被替换成'none'		
>>> friuts
['none', 'watermelon', 'orange','lemon']
  1. 常见内置函数
l.reverse()
l.count('a')
l.index('b')
l.sort()

元组

tuple
  1. 一旦初始化,不能被添加、删除、修改
  2. tuple不可变,故代码更安全。代码中尽量使用tuple代替list
具体使用
  1. 创建元组
>>> t = ()
>>> t1 = (1,)
>>> t2 = ('apple', 'banana', 'orange')
  1. 元素索引
>>> t2[1]
'banana'
  1. 特殊的元组 —— 元素改变
>>> t = ('a', 'b', ['c', 'd'])
>>> t[2][0] = 'A'
>>> t[2][1] = 'B'
>>> t
('a', 'b', ['A', 'B'])

初始化的tuple:

t
0
'a'
1
'b'
2
0
1
'c'
'd'

修改后的tuple:

t
0
'a'
1
'b'
2
0
1
'c'
'd'
'A'
'B'
  1. 常见内置函数
tup = (3, 2, 3, 7, 8, 1)
tup.count(3)
tup.index(7)
list(reversed(tup))
sorted(tup)

字典

dict
  1. 全称dictionary,在其他语言叫做map
  2. 使用key-value存储
  3. 空间换时间
  4. 查找或插入速度快,不随着key的增多而变慢
  5. 内存占用和浪费多
具体使用
  1. 创建字典
>>> d0 = {'name':'Amey', 'age':18, 'hobby':'study'}
>>> d1 = dict({'name':'Amey', 'age':18, 'hobby':'study'})
>>> d2 = dict([('name':'Amey'), ('age':18), ('hobby':'study')])
>>> d3 = dict(name='Amey', age=18, hobby='study')
  1. 插入元素
>>> d['sexy'] = 'female'
  1. 修改元素
>>> d['age'] = 16
  1. 判断元素存在
>>> 'class' in d
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'd'
  1. 元素索引
>>> d.get('age')
>>> 16
  1. 移除元素
>>> d.pop('sexy')

集合

set
  1. 一组key的集合,不存储value
  2. 元素无序、且不可重复
具体使用
  1. 创建集合
    需要提供一个list作为输入集合
>>> s0 = set([])
>>> s = set([1,1,2,2,3,3])
>>> s
{1,2,3}
  1. 添加元素add(key)
>>> s.add('a')
>>> s
{1,2,3,'a'}
  1. 删除元素remove(key)
>>> s.remove('1')
>>> s
{2,3,'a'}
  1. 元素的交集、并集
>>> s1 = ([2,3,4,6,8])
>>> s2 = ([1,3,5,7])
>>> s1 & s2
{3,5}
>>> s1 | s2
{1,2,3,4,5,6,7,8}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值