博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础学习笔记03——列表 元组 字典 集合
阅读量:387 次
发布时间:2019-03-05

本文共 4066 字,大约阅读时间需要 13 分钟。

1. 列表

1.1 格式

[数据1,数据2,数据3…]
列表为可变数据类型

1.2 操作

1.2.1 查找

list1 = ["Tom","Jerry","Jack"]for i in range(3) :    print(list1[i],end=" ")

index():返回指定数据所在位置下标,如果不存在则报错

语法:
列表序列.index(数据,开始位置下标,结束位置下标)

count():统计指定数据在当前列表中出现的次数

len():访问列表长度,即列表中数据个数

语法:
len(列表序列)
print(len(list1))

判断是否存在:

in:判断指定数据是否在某个列表序列,如果在返回true,否则返回false

1.2 增加

append():列表结尾追加数据
语法:
列表序列.appen(数据)

insert():指定位置新增数据

语法:
列表序列.insert(位置下标,数据)

exten():列表结尾追加数据,如果数据是一个序列,则将这个序列的数据逐一添加到列表

语法:
列表序列.extend(数据)

list1 = ["Tom","Jerry","Jack"]list1.extend("Ray")print(list1)        # ['Tom', 'Jerry', 'Jack', 'R', 'a', 'y']list1.extend(["Ray","Paul","James"])print(list1)        # ['Tom', 'Jerry', 'Jack', 'R', 'a', 'y', 'Ray', 'Paul', 'James']

1.3 删除

del
语法:
del 目标

删除列表:

del 列表名

删除指定数据:

del 列表名[下标]

pop():删除指定下标的数据(默认为最后一个),并返回改数据

语法:
列表序列.pop(下标)

list1 = ["Tom","Jerry","Jack"]name = list1.pop()print(name)     # Jack

remove():移除列表中某个数据的第一个匹配项

语法:
列表序列.remove(数据)

clear():清空列表,最后剩下一个空列表

1.4 修改

rever():逆置列表
语法:
列表序列.reverse()

sort():排序

语法:
列表序列.sort(key=None,reverse=False)
注意:reverse表示排序规则,reverse=True降序,reverse=False升序

list1 = [24,8,10,1,23]list1.sort()print(list1)    # [1, 8, 10, 23, 24]list1.sort(reverse=True)print(list1)    # [24, 23, 10, 8, 1]

1.5 复制

copy():复制
语法:
新列表序列 = 原列表序列.copy()

1.6 列表的遍历

while遍历:

list1 = ["Tom","Jerry","Jack","James","Ray","Paul"]i = 1while i < len(list1) :    print(list1[i],end=" ")    i += 1

for遍历:

for i in list1 :    print(i,end=" ")

列表总结:

常用方法:
index():返回指定数据所在位置下标,如果不存在则报错
len():访问列表长度,即列表中数据个数
append():列表结尾追加数据
pop():删除指定下标的数据(默认为最后一个),并返回改数据
remove():移除列表中某个数据的第一个匹配项

2. 元组

一个元组内可以存储多个数据,元组内的数据是不能修改的

2.1 格式

(数据1,数据2,数据3…)
元组为不可变数据类型

2.2 操作

index():返回指定数据所在位置下标,如果不存在则报错
count():统计指定数据在当前列表中出现的次数
len():访问列表长度,即列表中数据个数
元组里有列表是可以修改

tuple1=(["Tom","Jerry"],2,3,4)tuple1[0][0] = "Jack"print(tuple1)   # (['Jack', 'Jerry'], 2, 3, 4)

3. 字典

字典里面的数据都是以键值对形式出现,字典数据和数据顺序没有关系,即字典不支持下标,后期无论数据如何变化,只需按照对应的键的名字查找数据即可

字典为可变类型

dict1 = {
'name':'Tom','age':20,'gender':'男'}dict2 = {
} # 空字典

3.1 增加

语法:
字典序列[key]=值
注意:
如果key存在则修改这个key对应的值;如果不存在则增加此键值对

dict1 = {
'name':'Tom','age':20,'gender':'男'}dict1['age'] = 18print(dict1) # {'name': 'Tom', 'age': 18, 'gender': '男'}dict1['id'] = 24print(dict1) # {'name': 'Tom', 'age': 18, 'gender': '男', 'id': 24}

3.2 删除

del()/del : 删除字典或删除字典中指定键值对

dict1 = {
'name':'Tom','age':20,'gender':'男'}del dict1['gender']print(dict1) # {'name': 'Tom', 'age': 20}

clear():清空字典

3.3 查找

key值查找:

dict1 = {
'name':'Tom','age':20,'gender':'男'}print(dict1['name'])

get()查找:

语法:
字典序列.get(key,默认值)
注意:
如果当前查找的key不存在则返回第二个参数,如果省略第二个参数则返回None

dict1 = {
'name':'Tom','age':20,'gender':'男'}print(dict1.get('name')) # Tomprint(dict1.get('id',24)) # 24print(dict1.get(('id'))) # None

keys():查找key值,返回可迭代对象

dict1 = {
'name':'Tom','age':20,'gender':'男'}print(dict1.keys()) # dict_keys(['name', 'age', 'gender'])

values():查找value值,返回可迭代对象

dict1 = {
'name':'Tom','age':20,'gender':'男'}print(dict1.values()) # dict_values(['Tom', 20, '男'])

items():查找键值对值,返回可迭代对象

dict1 = {
'name':'Tom','age':20,'gender':'男'}print(dict1.items()) # dict_items([('name', 'Tom'), ('age', 20), ('gender', '男')])

3.4 遍历

遍历key:

dict1 = {
'name':'Tom','age':20,'gender':'男'}for key in dict1.keys(): print(key)

遍历value:

dict1 = {
'name':'Tom','age':20,'gender':'男'}for value in dict1.values(): print(value)

遍历元素:

dict1 = {
'name':'Tom','age':20,'gender':'男'}for item in dict1.items(): print(item)

遍历键值对:

dict1 = {
'name':'Tom','age':20,'gender':'男'}for key,value in dict1.items(): print(f'{key}={value}') # name=Tom age=20 gender=男

4. 集合

创建集合使用{}或set(),但是如果要创建空集合只能使用set(),因为{}用来创建空字典

集合特点:
集合有去重功能
集合不支持下标

s1 = {
24,4,5,6,72}s2 = set('adsgf')

4.1 增加

add():

s1 = {
10,20}s1.add(24)

update():追加的数据是序列

注意:
update只能追加序列
add只能追加单个元素

s1 = {
10,20}s1.update([24,23])s1.update(30) # 错误print(s1) # {24, 10, 20, 23}

4.2 删除

remove():删除集合中的指定数据,如果数据不存在则会报错
discard():删除集合中的指定数据,如果数据不存在也不会报错
pop():随机删除集合中的某个数据,并返回这个数据

s1 = {
10,20,30,40,50,60}s1.remove(20)s1.discard(10)s=s1.pop()

4.3 查找

in:判断数据是否在集合序列

转载地址:http://rvgwz.baihongyu.com/

你可能感兴趣的文章