早前接触过Python的时候就被这些定义搞得含混不清,但是不理解的事物会一直成为一个绊脚石。今天下定决心要将这些知识彻底搞懂吸收,故在此写下知识要点。
1.列表(List)是一种有序和可更改的集合。允许重复的成员。
2.元组(Tuple)是一种有序且不可更改的集合。允许重复的成员。
3.集合(Set)是一个无序和无索引的集合。没有重复的成员。
4.词典(Dictionary)是一个无序,可变和有索引的集合。没有重复的成员。
列表
创建和索引
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| mylist = ['fuck','this','shit'] print(mylist) print(mylist[1]) print(mylist[2:5]) mylist[1] = 'you' for x in mylist: print(x) if 'shit' in mylist: print('Oh,yeah!') mylist.append('she') mylist.insert(2,'bloody') mylist.remove('fuck') del mylist[0] mylist.clear()
|
复制列表
1
| copylist = mylist.copy()
|
或者
合并列表
最简单的方式是使用+,如:
或者
总结:
方法 |
描述 |
append() |
在列表的末尾添加一个元素 |
clear() |
删除列表中的所有元素 |
copy() |
返回列表的副本 |
count() |
返回具有指定值的元素数量。 |
extend() |
将列表元素(或任何可迭代的元素)添加到当前列表的末尾 |
index() |
返回具有指定值的第一个元素的索引 |
insert() |
在指定位置添加元素 |
pop() |
删除指定位置的元素 |
remove() |
删除具有指定值的项目 |
reverse() |
颠倒列表的顺序 |
sort() |
对列表进行排序 |
元组
创建和索引
1 2
| mytuple = ('apple','banana','cherry') print(mytuple[1])
|
更改元组值
需要将元组更改为列表:
1 2 3 4
| x = ('apple','banana','cherry') y = list(x) y[1] = 'kiwi' x = tuple(y)
|
如果只需要创建有一个项目的元组,即单项元组,需要在之后加上逗号:
1 2
| mytuple = ('apple',) print(type(mytuple))
|
注意:
我们无法删除元组的项目,但是可以删除整个元组,使用del。
集合
创建与索引
1
| myset = {'apple','banana','pear'}
|
集合是无序的
添加项目
1 2
| myset.add('orange') myset.update(['orange','mango'])
|
方法 |
描述 |
add() |
向集合添加元素。 |
clear() |
删除集合中的所有元素。 |
copy() |
返回集合的副本。 |
difference() |
返回包含两个或更多集合之间差异的集合。 |
difference_update() |
删除此集合中也包含在另一个指定集合中的项目。 |
discard() |
删除指定项目。 |
intersection() |
返回为两个其他集合的交集的集合。 |
intersection_update() |
删除此集合中不存在于其他指定集合中的项目。 |
isdisjoint() |
返回两个集合是否有交集。 |
issubset() |
返回另一个集合是否包含此集合。 |
issuperset() |
返回此集合是否包含另一个集合。 |
pop() |
从集合中删除一个元素。 |
remove() |
删除指定元素。 |
symmetric_difference() |
返回具有两组集合的对称差集的集合。 |
symmetric_difference_update() |
插入此集合和另一个集合的对称差集。 |
union() |
返回包含集合并集的集合。 |
update() |
用此集合和其他集合的并集来更新集合。 |
字典
创建与索引
1 2 3 4 5 6 7 8
| mydict = { "brand": "Porsche", "model": "911", "year": 1963 } print(mydict) x = mydict["model"] x = mydict.get("model")
|
字典的嵌套
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| child1 = { "name" : "Phoebe Adele", "year" : 2002 } child2 = { "name" : "Jennifer Katharine", "year" : 1996 } child3 = { "name" : "Rory John", "year" : 1999 }
myfamily = { "child1" : child1, "child2" : child2, "child3" : child3 }
|
clear() |
删除字典中的所有元素 |
copy() |
返回字典的副本 |
fromkeys() |
返回拥有指定键和值的字典 |
get() |
返回指定键的值 |
items() |
返回包含每个键值对的元组的列表 |
keys() |
返回包含字典键的列表 |
pop() |
删除拥有指定键的元素 |
popitem() |
删除最后插入的键值对 |
setdefault() |
返回指定键的值。如果该键不存在,则插入具有指定值的键。 |
update() |
使用指定的键值对字典进行更新 |
values() |
返回字典中所有值的列表 |