【廖雪峰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 d s1 & 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 "", 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 "", 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}

你可能感兴趣的:(Python)