第1天:Python基础语法(四)

正文:
在之前的文章中,我们已经学习了Python的基本语法关于列表的一些常用操作。

在本篇文章中,我们将继续学习其他类型

字典类型

➢ 在python中,dict用来代表字典,并且可以创建一个字典

➢ 在python中,通过{}将一个个key 与value存入字典中

➢ key支持字符串,数字和元组类型,但列表是不支持的

➢ 字典中的value可以是任何python的内置数据类型的对象和自定义的对象

➢ 字典中每一个key一定是唯一的

user_info = {'name':'dawei', 'age':15, 'top':'175cm'}
print(user_info) 

update

➢ 添加新的字典,如新字典中有和原字典相同的key ,则该key的value会被新字典的value覆盖

用法:dict.update(new_dict)–该函数无返回值

参数:new_dict:新的字典

name = {'top':'175'}
name_new = {'name':'小白','age':'18'}
name.update(name_new)  
print(name)   #添加新字典{'top': '175', 'name': '小白', 'age': '18'}

name_a = {'top':'182'}
name.update(name_a)
print(name)  #修改top值{'top': '182', 'name': '小白', 'age': '18'}

setdefault

获取某个key的value,如key不存在于字典中,将会添加key并将value设为默认值

用法: dict.setdefault(key, value)

参数︰key 需要获取的key

value如果key不存在,对应这个key存入字典的默认值

name = {'name':'小白','age':'18','top':'175'}
value = name.setdefault('name','word')  #value存在
print(name,value) #{'name': '小白', 'age': '18', 'top': '175'} 小白

value = name.setdefault('sex','男')
print(name,value)   #value值不存在
#输出 {'name': '小白', 'age': '18', 'top': '175', 'sex': '男'} 男

keys—获取字典中的key值

用法:dict.keys() ->无需传参,返回一个key集合的伪列表

my_dict = { 'name ' : 'dewei' , 'age ' : 33}
print(my_dict.keys())     #dict_keys(['name ', 'age '])
#返回的不是列表

my_dict = { 'name ' : 'dewei' , 'age ' : 33}
key_dict = list(my_dict.keys())      #重新定义一个列表
print(key_dict)  #['name ', 'age ']  #获取字典中的key值

values—获取字典中的value值

用法︰dict.values() ->无需传参,返回一个value集合的伪列表

my_value = { 'name ' : 'dewei' , 'age ' : 33}
print(my_value.values())   #dict_values(['dewei', 33])

value_list = list(my_value.values())  #重新定义一个列表
print(value_list)    #['dewei', 33] 获取字典中的value值

[]–获取字典中key对应的value值

➢ 字典+中括号内传key,不进行赋值操作即为获

➢ 取返回key对应的value值

my_dict = {'name':'dewei','age':33}
name =my_dict['name']
print(name)   #输出dewei

get—获取当前字典中指定key的value

用法: dict.get(key, default=None)

参数key: 需要获取value的key

default : key不存在则返回此默认值,默认是None ,我们也可以自定义

my_dict = {'name':'dewei','age':33}
key_name =my_dict.get('name')
print(key_name)   #输出dewei

popitem–字典中的末尾删除函数

用法:dict.popitem() --无需传参

返回被删除的键值对,用元组包裹0索引是key ,1索引是value

books = {"Chinese":"语文","Music":"音乐"}
book = books.popitem()
print(book)  #元组 ('Music', '音乐')
print('{} {}'.format(book[0],book[1]))    #Music 音乐

集合

➢ 集合( set )是一个无序的不重复元素序列

➢ 常用来对两个列表进行交并差的处理性

➢ 集合与列表─样,支特所有数据类型

➢ 通过set函数来创建集合,不能使用{}来创建空集合

a = set()
print(a,type(a)) #set()   <class 'set'>

add

➢ 用于集合中添加一个元素,如果集合中已存在该元素则该函数不执行

用法:set.add(item)

参数:item :要添加到集合中的元素

返回值:无返回值

update

➢ 加入一个新的集合(或列表,元组,字符串),如新集合内的元素在原集合中存在则无视

用法:set.update(iterable)

参数:iterable :集合,列表元组字符串

返回值:无返回值,直接作用于原集合

a_touple ='python'
a_set = set()
a_set.update(a_touple)
print(a_set)   #结果无规则输出{'t', 'o', 'n', 'h', 'y', 'p'}

remove

➢ 将集合中的某个元素删除,如元素不存在将会报错

用法:set.remove(item) #注意是元素不是索引

参数:item :当前集合中的一个元素

返回值:无返回值,直接作用于原集合

clear

➢ 清空当前集合中的所有元素

用法:set.clear()

参数:

无返回值:无返回值,直接作用于原集合

集合的差集difference

➢ a, b两个集合,由所有属于a且不属于b的元素组成的集合叫做a与b的差集

返回集合的差集,即返回的集合元素包含在第一个集合中,但不包含在第二个集合(方法的参数)中

用法:

a_set.difference(b_set)

参数:

b_set :当前集合需要对比的集合

返回值:

返回原始集合于对比集合的差集(即a_set与b_set的差集)

a = ['a','b','c']
b = ['c','d','f']
a_set = set(a)
b_set = set(b)
new_set = a_set.difference(b_set)
print(new_set)  #输出{'a', 'b'}

集合的交集intersection

➢ 返回两个或更多集合中都包含的元素,即交集

用法:

a_set.intersection(b_set…)

参数:

b_set… :与当前集合对比的1或多个集合

返回值:

返回原始集合与对比集合的交集

a = ['a','b','c']
b = ['c','d','f']
a_set = set(a)
b_set = set(b)
new_set = a_set.intersection(b_set)
print(new_set)   #{'c'}

集合的并集union

用法:

a_set.union(b_set…)

参数:

b_set…:与当前集合对比的1或多个集合

返回值:

返回原始集合与对比集合的并集

a = ['a','b','c']
b = ['c','d','f']
a_set = set(a)
b_set = set(b)
new_set = a_set.union(b_set)
print(new_set)   #{'b', 'f', 'd', 'a', 'c'}

isdisioint判断两个集合是否包含相同的元素

如果没有返回True ,否则返回False

用法∶

a_set.isdisjoint(b_set)

参数︰

b_set : 与当前集合用来判断的集合

返回值:

返回一个布尔值True或 False

a = ['a','b','c']
b = ['c','d','f']
a_set = set(a)
b_set = set(b)
new_set = a_set.isdisjoint(b_set)
print(new_set)  #False
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

经历一个春

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值