python基础那些事(三)

列表

[数据1, 数据2, 数据3, 数据4......] 

查找
1.下标

name_list = ['Tom', 'Lily', 'Rose']
print(name_list[0]) # Tom
print(name_list[1]) # Lily
print(name_list[2]) # Rose

2.函数
index():返回指定数据所在位置的下标 。

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

count():统计指定数据在当前列列表中出现的次数。
len():访问列列表⻓长度,即列列表中数据的个数。

3.判断是否存在
in:判断指定数据在某个列列表序列列,如果在返回True,否则返回False

name_list = ['Tom', 'Lily', 'Rose']
# 结果:True
print('Lily' in name_list)
# 结果:False
print('Lilys' in name_list)

not in 判断指定数据在某个列表序列列,如果不在返回True,否则返回False

增加
append():列列表结尾追加数据
注:如果追加列表 那么追加的列表作为一个数据追加
extend():列列表结尾追加数据,如果数据是⼀一个序列列,则将这个序列列的数据逐⼀一添加到列列表
insert():指定位置新增数据。

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

删除
del
pop():删除指定下标的数据(默认为最后一个),并返回该数据。
remove():移除列列表中某个数据的第一个匹配项。

name_list = ['Tom', 'Lily', 'Rose']
name_list.remove('Rose')
# 结果:['Tom', 'Lily']
print(name_list)

clear():清空列表
修改

逆置:reverse()
排序:sort()

列表序列.sort( key=None, reverse=False) 

元组
一个元组可以存储多个数据,元组内的数据是不能修改的
定义:
定义元组使⽤用小括号,且逗号隔开各个数据,数据可以是不同的数据类型。

# 多个数据元组
t1 = (10, 20, 30)
# 单个数据元组
t2 = (10,)

常⽤用操作⽅方法
index()
len()

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

s1 = {10, 20, 30, 40, 50}
print(s1)
s2 = {10, 30, 20, 10, 30, 40, 30, 50}
print(s2)
s3 = set('abcdefg')
print(s3)
s4 = set()
print(type(s4)) # set
s5 = {}
print(type(s5)) # dict

特点:

  1. 集合可以去掉重复数据;
  2. 集合数据是⽆无序的,故不不⽀支持下标

常见操作

add()

update(), 追加的数据是序列。

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

查找数据
in:判断数据在集合序列
not in:判断数据不在集合序列

字典
创建字典的语法

# 有数据字典
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
# 空字典
dict2 = {}
dict3 = dict()

字典特点:
符号为大括号
数据为键值对形式出现
各个键值对之间⽤用逗号隔开


写法:字典序列列[key] = 值

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

写法:字典序列列[key] = 值

key值查找

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1['name']) # Tom
print(dict1['id']) # 报错
字典序列.get(key,默认值)   #如果key不存在则返回第二个参数(默认值)
#若省略第二个参数,则返回None

dict1 = {‘name’: ‘Tom’, ‘age’: 20, ‘gender’: ‘男’}
print(dict1.get(‘name’)) # Tom
print(dict1.get(‘id’, 110)) # 110
print(dict1.get(‘id’)) # None


keys() #返回key值
values() #返回value值
items() #返回每一项

列表推导式
作⽤:⽤一个表达式创建⼀个有规律律的列表或控制⼀个有规律列列表。
列表推导式⼜又叫列表生成式。

list1 = [i for i in range(10)]
print(list1)
list1 = [i for i in range(10) if i % 2 == 0]
print(list1)
list1 = [(i, j) for i in range(1, 3) for j in range(3)]
print(list1)

字典推导式
字典推导式作用:快速合并列列表为字典或提取字典中⽬目标数据

dict1 = {i: i**2 for i in range(1, 5)}
print(dict1) # {1: 1, 2: 4, 3: 9, 4: 16}

list1 = ['name', 'age', 'gender']
list2 = ['Tom', 20, 'man']
dict1 = {list1[i]: list2[i] for i in range(len(list1))}
print(dict1)
counts = {'MBP': 268, 'HP': 125, 'DELL': 201, 'Lenovo': 199, 'acer': 99}
# 需求:提取上述电脑数量大于等于200的字典数据
count1 = {key: value for key, value in counts.items() if value >= 200}
print(count1) # {'MBP': 268, 'DELL': 201}


集合推导式

list1 = [1, 1, 2]
set1 = {i ** 2 for i in list1}
print(set1) # {1, 4}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值