笔记更新于2019年11月10日,
摘要:list、tuple、dict、set的介绍与比较
写在前面:为了更好的学习python,博主记录下自己的学习路程。本学习笔记基于廖雪峰的Python教程,如有侵权,请告知删除。欢迎与博主一起学习Pythonヽ( ̄▽ ̄)ノ
list
list,即列表,清单的意思。在Python中,list是一种有序集合。
- list的创建与访问。
>>>L=['a','b','c'] #创建一个名字为L的list,在L中有字符a,b,c三个元素
>>>len(L) #获取list元素的个数
3
>>>L[0] #访问L的第一个元素,索引是从0开始
a
>>>L[-1] #访问L的倒数第一个元素,即L[1]=L[-2]
c
>>>S=['python',L,'kk','java']
>>>S[1][2] #访问list中的list元素
c
- list元素的添加与删除,有关.append( )、.insert( )、.pop( )的运用。
>>>L.append('d') #在集合L的末尾追加元素d
['a', 'b', 'c', 'd']
>>>L.insert(1,'add') #在索引号为1的位置插入元素
['a', 'add', 'b', 'c', 'd']
>>>L.pop() #删除集合L的最后一个元素
['a', 'add', 'b', 'c']
>>>L.pop(1) #删除集合L索引号为1的元素
['a', 'b', 'c']
tuple
tuple,即元组,数组的意思。在Python中tuple是一种有序元组,一旦初始化就无法修改,既不能添加也不能删除元素。
- tuple的创建与访问。
>>>T=() #定义一个空的tuple,通过x=()的形式定义
>>>T=('a',) #定义只有一个元素的tuple,注意要有逗号,否则T将视为表示字符a的变量
>>>T=('a','b') #定义有两个元素的tuple
>>>T=('a','b',['c','d']) #定义内含list的tuple
>>>T[2][0] #tuple的访问与list访问一样
c
dict
dict,即dictionary,字典的意思。使用键—数值(key-value)的方式储存,具有很快的查询速度。需要注意的是,dict的key一定要是不可变对象,如字符串,整数,而list是可变对象不能用作key。
- dict的创建与访问。
>>>D={'Ming':100,'Hong':70,33:'aaa'} #定义一个dict
>>>D['Ming'] #访问D中key为'Ming'的值100
>>>D[33]='bbb' #key对应的值可以被修改
>>>D[33]
bbb
- dict的key判断与修改,有关.get( )、 .pop( )的运用。
>>>'Lily'in D #判断D中是否有'Lily'这一key
False
>>>'Ming'in D
True
>>>D.get('Ming') #拿取D中'Ming'对应的数值
100
>>>D.get('Lily') #若没有指定的key,则返回None
None
>>>D.get('Lily',1) #若没有指定的key,则返回指定值1
1
>>>D.pop(33) #用pop(key)的方式来删除key,同时对应的值也会被删除
>>>D
{'Ming': 100, 'Hong': 70}
set
set,即一套,集合的意思。在Python中与dict类似,但没有value,只有key。在set中不会有重复的key。同样的,set中的key一定要是不可变对象。
- set的创建、添加与删除。
>>>S=set([2,4,9,0,-1,2,1]) #创建一个set,值得注意的是,set是无序和无重复元素的集合
>>>S
{0, 1, 2, 4, 9, -1}
>>>S={1,3,5,} #或者直接通过{}创建
>>>S
{1, 3, 5}
>>>S.add(3) #add()方式添加元素
>>>S
{0, 1, 2, 4, 9, -1}
>>>S.add(1) #若添加重复元素则不会有变化
>>>S
{0, 1, 2, 3, 4, 9, -1}
>>>S.remove(3) #remove() 方式移除元素
>>>S
{0, 1, 2, 4, 9, -1}
- set的集合运算。
>>>S1=set([0,1,2])
>>>S2=set([1,2,3])
>>>S1&S2 #作交集
{1, 2}
>>>S1|S2 #作并集
{0, 1, 2, 3}
list、tuple、dict、set的比较
` | list | tuple | dict | set |
---|---|---|---|---|
创建 | N=[ , , ] | N=( , , ) | N={key1:value1,key2:value2} | N={ , , }或N=set([ , , ]) |
添加元素 | N.append()或N.insert(索引号,元素) | 无 | N[key3]=value3 | N.add() |
删除元素 | N.remove()或N.pop(索引号) | 无 | N.pop(key1) | N.remove() |
补充笔记
在Python的交互式环境下,若返回的是None则不显示结果。
以上就是本节的全部内容,感谢你的阅读。
下一节内容:4.条件判断if和循环for与while的运用
有任何问题与想法,欢迎评论与吐槽。
和博主一起学习Python吧( ̄▽ ̄)~*