字典与集合

1.元组

元组的数据类型为tuple
元组的表现形式:至少有一个逗号, 当元组是空元组时用()表示,不是时()可以省略,举例代码如下:

tup1 = ()
tup2 = 'python', #如果没有这个,  tup2的数据类型为字符串型
tup3 = 1,2,3,4,5

元组是一个不可变序列(一般当我们希望数据不改变时,使用元组,其他情况基本用列表)
可以对元组进行解包,即将元组中每一个元素都赋值给一个变量

2.字典

2.1字典的创建

字典是一种新的数据类型,不是序列,而是一种映射(mapping)
元组 ——()
列表 ——[]
字典 ——{}
字典和列表的作用类似,是用来存储对象的容器
列表存储性能好,但查询数据的性能一般
字典查询数据性能好,存储性能一般
创建字典方法1:
创建字典:语法{key:value,key:value,…}

data = {
    'name':'小星星',
    'age':'18',
    'sex':'女',
    'waihao':'晴天'
}

创建字典方法2:
用dict()函数来创建字典

data = dict([('name','小星星'),('age',18),('sex','女')])

字典的值(value)可以是任意对象
字典的键(key)可以是任意的不可变对象 (int str bool tuple…)
字典我们也称之为键值对(key-value)结构
每个字典中都可以有多个键值对,每个键值对我们称其为一项(item)
字典的键是不能重复的,如果重复,后面的会替换前面的

2.2字典的使用

len()函数、 in、not in
len()函数:用来获取字典中键值对的个数
in:检查字典中是否包含指定的键
not in:检查字典中是否不包含指定的键

data = {
    'name':'小星星',
    'age':'18',
    'sex':'女',
    'waihao':'晴天'
}
print(len(data))            #4
print('age'in data)         #True
print('age'not in data)     #False

1、查询值
可以根据键来查询值
语法:dict[key]
或者使用get函数
语法:dict.get(key,default)
如果你的Key不存在返回None
可以指定第二个参数,当这个Key值不存在的时候,第二个参数未指定的话返回None

print(data.get('sex'))

2.修改字典
直接借助索引,修改字典

data['name']='小可爱'  #改变字典中键对应的值
data['xingqu']='读书'    #给字典添加键值对

用函数修改字典
setdefault():给字典添加一组键值对,有返回值,返回该键对应的值

data.setdefault('xingqu','读书')   

如果key已存在在字典当中,则返回key的值,不会对字典做任何操作
如果key不存在,则向字典中添加这个key 并设置value

update():给字典添加多组键值对,无返回值

d2 = {1:'a',2:'b',3:'c'}
data.update(d2)

如果有重复的Key 后面的会替换前面的

del:删除字典中的键值对

del data['name']

pop():根据指定的键删除键值对,会将删除的value返回
popitem() :随机删除字典中的一组键值对,一般都会删除最后一个

copy():⽤来对字典进⾏潜复制,其中潜复制只会复制字典本身,如果字典中还有个字典是不会进⾏复制的

3.遍历字典

我们主要可以通过3种⽅式对字典进⾏遍历
keys() 该⽅法返回字典所有的key
values() 该⽅法返回⼀个序列 序列中保存有字典的值
items() 该⽅法会返回字典中所有的项;它返回⼀个序列,序列中包含有双值⼦序列双值分别是字典中的key和value

4.集合

集合表现形式set 集合和列表⾮常相似
不同点:
集合只能存储不可变对象
集合中存储的对象是⽆序的
集合不能出现重复元素

使⽤{}来创建集合

a = {1,2,3,4,7,9,10,10,1,1,1}
b = {}
print(a,type(a)) #{1, 2, 3, 4, 7, 9, 10} <class 'set'>
print(b,type(b)) #{} <class 'dict'>

也可以通过set()来将序列和字典转换成集合

s = set([1,2,3,4,5,1,1,1,5,6]) # 将列表转换为集合
s = set('hello') 
s = set({'a':1,'b':2,'c':3}) # {'a', 'b', 'c'}

len():获取集合中元素的数量
add():像集合中添加元素
update():将⼀个集合中的元素添加到另⼀个集合当中
pop():随机删除集合中的⼀个元素⼀般是删除最后⼀个元素 remove() 删除集合中指定的元素
clear() 清空集合

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值