【廖雪峰Python学习笔记】list tuple dict set
生活随笔
收集整理的這篇文章主要介紹了
【廖雪峰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
- Python內置的一種數據類型
- 一種可變的有序集合
- 可隨時添加或刪除其中元素
具體使用
- 創建列表
>>> l = [] # len(l) = 0, 空列表
>>> friuts = ['apple', 'banana', 'orange'] # len(friuts) = 3
>>> L = ['a', 12, True, ['a', 'b']] # len(L) = 4, 元素類型可以不一致
- 元素索引
可正向或者逆向索引
索引不能越界,最后一個元素的索引為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
- 添加元素
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']
- 刪除元素
pop(i):刪除第i個元素
>>> friuts.pop(2) # l.pop(i)
>>> friuts
['apple', 'watermelon', 'orange','lemon']
- 修改元素
>>> friuts[0] = 'none' # 'apple'被替換成'none'
>>> friuts
['none', 'watermelon', 'orange','lemon']
- 常見內置函數
l.reverse()
l.count('a')
l.index('b')
l.sort()
元組
tuple
- 一旦初始化,不能被添加、刪除、修改
- tuple不可變,故代碼更安全。代碼中盡量使用tuple代替list
具體使用
- 創建元組
>>> t = ()
>>> t1 = (1,)
>>> t2 = ('apple', 'banana', 'orange')
- 元素索引
>>> t2[1]
'banana'
- 特殊的元組 —— 元素改變
>>> t = ('a', 'b', ['c', 'd'])
>>> t[2][0] = 'A'
>>> t[2][1] = 'B'
>>> t
('a', 'b', ['A', 'B'])
初始化的tuple:
修改后的tuple:
- 常見內置函數
tup = (3, 2, 3, 7, 8, 1)
tup.count(3)
tup.index(7)
list(reversed(tup))
sorted(tup)
字典
dict
- 全稱dictionary,在其他語言叫做map
- 使用key-value存儲
- 空間換時間
- 查找或插入速度快,不隨著key的增多而變慢
- 內存占用和浪費多
具體使用
- 創建字典
>>> 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')
- 插入元素
>>> d['sexy'] = 'female'
- 修改元素
>>> d['age'] = 16
- 判斷元素存在
>>> 'class' in d
Traceback (most recent call last):File "<stdin>", line 1, in <module>
KeyError: 'd'
- 元素索引
>>> d.get('age')
>>> 16
- 移除元素
>>> d.pop('sexy')
集合
set
- 一組key的集合,不存儲value
- 元素無序、且不可重復
具體使用
- 創建集合
需要提供一個list作為輸入集合
>>> s0 = set([])
>>> s = set([1,1,2,2,3,3])
>>> s
{1,2,3}
- 添加元素add(key)
>>> s.add('a')
>>> s
{1,2,3,'a'}
- 刪除元素remove(key)
>>> s.remove('1')
>>> s
{2,3,'a'}
- 元素的交集、并集
>>> 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学习笔记】list tuple dict set的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【廖雪峰Python学习笔记】字符串与编
- 下一篇: 【廖雪峰Python学习笔记】高阶函数