Python3 数据结构:list,tuple,dict,set

Python中的四种数据结构:列表(list),元组(tuple),字典(dict),集合(set)

(可以点击蓝色数据结构名称跳转的相对应的help()详细页面)

1.列表 list

1.1. 可变的,有序的。可以进行增,删,查,改的操作

myList = ['pen','notebook','eraser']

print('myList has ',len(myList),' 个items') # myList has 3 个items
myList.append('ruler') # ['pen','notebook','eraser','ruler']
del myList[0] # ['notebook','eraser','ruler'] python 是从0开始算的

1.2. 列表的引用,复制

myList = ['pen','notebook','eraser']
#引用
myNewList = myList # 这是引用!!不是赋值/复制的意思
myNewList.remove('pen') 

print(myList) # ['notebook','eraser']
print(myNewList) # ['notebook','eraser']

#copy
myCopyList = myList[:]
myCopyList.append('copyPen')

print(myList) # ['notebook','eraser']
print(myCopyList) # ['notebook','eraser','copyPen']

如果想要复制一个列表或者类似的序列或者其他复杂的对象,那么必须使用切片的方法来取得复制。

2.元组 tuple

不可变,有序的。元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用
的元组的值不会改变。

myTuple = ('Monday','Tuesday','Wednesday')
myTuple[0] # Monday
myEmptyTuple = () # 空的tuple
mySingleTuple = (1,) # 要在唯一的一个member 后边加,表示这是一个tuple ,和一些带括号的表达式做区分
3.字典 dict

无序的,key:value 的形式。key是唯一的,要用简单(不可变)对象,e.g.字符串。value 就都可以。

myDict = {'Dad': '1st Jan','Mom': '12th Nov'}
# 遍历dict的items
for name, birthday in myDict.items(): 
    print('{0}\'s birthday is {1}'.format(name, birthday))

#添加item
myDict['sister'] = '13th Dec'
print(myDict.items()) # dict_items([('Dad', '1st Jan'), ('Mom', '12th Nov'), ('sister','13th Dec')])
print(myDict) # {'Dad': '1st Jan', 'Mom': '12th Nov','sister': '13th Dec'}

#判断某个key是否存在
if 'sister' in myDict:
    print('sister in myDict')
4.集合 set

无序的,当对象存在与否比较重要时用set。可以用集合来做数学上的集合操作,求交集,是否为子集之类

mySet = set([1,99,6])
mySetC = mySet.copy() 
mySetC.add(55) # {56, 1, 99, 6}
mySetC & mySet # 交集{1, 99, 6}
mySetC | mySet # 并集{1, 99, 6, 56}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值