前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python中的字典与集合

python中的字典与集合

作者头像
六小登登
发布2019-08-14 11:23:59
1.4K0
发布2019-08-14 11:23:59
举报
文章被收录于专栏:Modeng的专栏Modeng的专栏
知识共享许可协议
知识共享许可协议

版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 (Creative Commons

上一篇我们说到了列表和元组,它们的用法相同,但唯一的却别在于列表是可变类型,而元组是不可变类型。今天我们继续聊聊 python 中的另外两个数据类型字典和集合。

字典

首先字典是可变类型,和列表一样也是储存多种类型的数据。但它是无序的所以不可用下标去访问,通常我们会以「健值对」的方式去表示。

注意的是:健必须是唯一的且必须是不可变类型,所以只有字符串,数字,元组才可以作为健。而值可以为任何类型也可相同。

字典的创建方式如下:

dic = {key1 : value1, key2 : value2 }

例如我们创建一个人物信息:

info = {
    "name": "六小登登",
    "age": 18,
    "height": 180,
    "tag": ['高', '穷', '帅']
}

访问字典

我们都知道列表的访问是利用索引访问的。字典利用健访问即可。

info[name] #六小登登
info[age] #18

修改和添加

修改字典元素是利用「健」访问然后重新赋值即可,添加元素是添加新「的健」即可。简单总结就是:健存在就是修改,健不存在就是添加。

比如:

修改元素

info = {'age': 18}
info['age'] = 20
print(info) #{'age': 20}

添加元素

info = {'age': 18}
info['name'] = '六小登登'
print(info) #{'age': 18, 'name': '六小登登'}

删除字典

字典可以删除点个元素,可以清空整个字典。

删除单个元素或者删除整个字典都可以用 del 语句。

删除单个元素

info = {'age': 18, 'name': '六小登登'}
del info['name']
print(info) #{'age': 18}

删除整个字典

info = {'age': 18, 'name': '六小登登'}
del info
print(info) #此时会打印异常,因为del后字典不存在了。

利用 clear() 方法清空字典

info = {'age': 18, 'name': '六小登登'}
info.clear()
print(info)#{}

字典的 keys方法,values方法,items方法。

info = {'age': 18, 'name': '六小登登'}
print(info.keys()) #['age', 'name']
print(info.values()) #[18, '六小登登']
print(info.items()) #[('age', 18), ('name', '六小登登')]

集合

集合和字典有点相似,首先从形式上都是用 {} 表示。其次它也是无序的。但是它没有「健」。

通常集合表示如下:

{ele1,ele2,...,elen}

看上去它又和列表相似,但是列表是有序的可以通过下标访问,但集合不可以而且元素不可重复。

所以集合有两个特点:

  1. 不可重复
  2. 无序所以不能用下标访问

除此之外,因为字典也是{ } 大括号表示。所以空集合不可用{ }创建,它会被当作空对象。要想创建空集合需要用set()方法。

set()也可以将字符串、列表、元组等转换成集合。

set1 = set('abcdabcd')
set2 = set([1,2,3,4,5])
print(set1) #{'c', 'd', 'b', 'a'}
print(set2) #{1, 2, 3, 4, 5}

由此可见我们可以利用集合去重数据是非常好用的。

访问元素

首先集合没有「健」所以无法通过这个访问,其次集合是无序的又无法通过下标访问。怎么办?所以要想访问集合的值,就必须使用循环结构,把值逐一读取出来。

set1 = {'java', 'javascript', 'python'}
for item in set1:
    print(item)

# javascript
# python
# java

添加元素

add()方法可添加集合元素

set2 = set([1,2,3,4,5])
set2.add(6)
print(set2) #{1, 2, 3, 4, 5, 6}

删除元素

remove()方法用于删除元素

set2 = set([1,2,3,4,5])
set2.remove(5)
print(set2) #{1, 2, 3, 4}

也可用 del 语句:

set2 = set([1,2,3,4,5])
del set2
print(set2) #删除后集合不存在,会打印错误
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年08月02日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 字典
  • 访问字典
  • 修改和添加
  • 删除字典
  • 集合
  • 访问元素
  • 添加元素
  • 删除元素
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档