python基础学习笔记03——列表 元组 字典 集合

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 = 1
while 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'] = 18
print(dict1)    # {'name': 'Tom', 'age': 18, 'gender': '男'}
dict1['id'] = 24
print(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'))    # Tom
print(dict1.get('id',24))   # 24
print(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:判断数据是否在集合序列

你可能感兴趣的:(python基础学习笔记)