码迷,mamicode.com
首页 > 编程语言 > 详细

Day4—python基础—字典and集合

时间:2018-03-02 23:56:19      阅读:315      评论:0      收藏:0      [点我收藏+]

标签:pos   div   元素   运行   []   增删改   两种   intersect   一个   

字典就是键值对应,键唯一,无序。集合用来去重,关系测试,无序。

字典这种数据类型常用的方法有:
1.clear() 
print(name.clear())       清除字典中的数据,输出结果为none
2.fromkeys()
print(name.fromkeys(["c","z","p"],100))   创建字典,通过列表的方式指定多个key,并将这些key赋予相同的值
输出结果为:
{c: 100, z: 100, p: 100}
3.get()
v = dic[k11111]
print(v)
v = dic.get(k1,111111)
print(v)                        根据Key获取值,key不存在时,可以指定默认值(None)
4.pop
name={
    "k1":"v1",
    "k2":"v2"
}
name.pop("k1")              删除,指定删除的key,如果存在,删除,如果key不存在,报错
print(name)                
输出结果:
{k2: v2}
5.popitem
dic={
    "k1":"v1",
    "k2":"v2"
}
print(dic.popitem())          Python 字典 popitem() 方法随机返回并删除字典中的一对键和值(一般删除末尾对)。如果字典已经为空,却调用了此方法,就报出KeyError异常
输出结果:
{k2: v2}
6.update
dic = {
    "k1": v1,
    "k2": v2
}
dic.update({k1: 111111})                 更新
print(dic)
运行结果:
{k1: 111111, k2: v2}
字典的for循环
for i in dic.keys():                     输出字典中所有key的值
    print(i)
for i in dic.values():           输出字典中所有value的值
    print(i)
for k,v in dic.items():           输出字典中所有的key对应的value值
    print(k,v)

列表、元组、字典都可以通过切片的方式进行增删改查。
集合的定义方法如下:
name=set("czp") /name=set({1,2,3,4})
print(type(name))
运行结果:
{z, c, p} /{9, 10, 3, 5}             打印结果可以看到是元素是无序的
<class set>                              使用type()方法打印name的类型为set
通过下面这个例子 进一步说明集合是去重的
name=set("czpcc")
print(name)
运行结果:
{c, p, z}
集合的一些基本方法如下所示:

1.add():添加,仅适用于添加单个元素
s = set([3,5,9,10])
s.add("x")     添加一个元素,注意:add方法只能添加单个元素,
print(s)            添加多个元素需要用update方法
运行结果:
{3, 5, 9, 10, x}
2.update():更新,适用于添加多个元素
s = set([3,5,9,10])
s.update([1,2])            通过update方法添加多个元素,可以使用[]列表的形式,也可以使用“”,“”这种,的形式隔开添加
print(s)
运行结果:
{1, 2, 3, 5, 9, 10}
3.clear():清空
s = set([3,5,9,10])
s.clear()                           移除集合中的所有元素
4.copy() :深浅copy会在后面的博客中详细说。
5.pop():删除(随机删)
s = set([3,5,9,10])
s.pop()         pop()方法,随机删除集合中的元素,如果集合为空,程序报错
print(s)
运行结果:
{10, 3, 5}
6.remove():删除(指定元素删除)
s = set([3,5,9,10])
s.remove(3)                           指定元素删除,如果为空或者该元素不存在,程序报错
print(s)
运行结果:
{9, 10, 5}

上面提到了,集合的主要功能是去重和关系测试,对于集合的关系测试使用方法如下所示:
1.交集,可以如下两种方式表示
s = set([3,5,9,10])
v = set([3,4,9,11])
print(s&v)
print(s.intersection(v))              求两个集合的交集
运行结果是一样的:
{9, 3}
{9, 3}
2.并集,用如下两种方式表示
s = set([3,5,9,10])
v = set([3,4,9,11])
print(s|v)                            求两个集合的并集
print(s.union(v))
运行结果:
{3, 4, 5, 9, 10, 11}
{3, 4, 5, 9, 10, 11}
3.差集,用如下两种方式表示
s = set([3,5,9,10])
v = set([3,4,9,11])
print(s-v)                             求两个集合的差集
print(s.difference(v))
运行结果如下:
{10, 5}
{10, 5}
另外还有 issubset()-判断子集、issuperset()-判断父级等方法,返回的值为布尔值。

 

Day4—python基础—字典and集合

标签:pos   div   元素   运行   []   增删改   两种   intersect   一个   

原文地址:https://www.cnblogs.com/yaozhenhua/p/8495349.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!