Python-字典dic和集合set

Posted 陈敬(Cathy)

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-字典dic和集合set相关的知识,希望对你有一定的参考价值。

一、字典dict

dict以键值对形式存储,创建方式是用大括号{}并用冒号分隔键和值。

>>> d={chen:60,zhang:80}
>>> print d
{chen: 60, zhang: 80}

赋值操作

>>> d[chen]=65
>>> print d
{chen: 65, zhang: 80}

取值:get()方法,可以为其设置默认值。

>>> print d.get(liu,0)
0

 

删除:可以用pop方法删除值,并将删除的元素返回。

d[liu]=85
>>> d
{chen: 60, liu: 85, zhang: 80}

>>> d.pop(liu)
85
>>> d
{chen: 60, zhang: 80}

keys()和values()方法分别返回字典的键和值集合,虽然键值对没有特定的顺序,但是这两个方法返回的结果顺序是一致的。

>>> d.keys()
[chen, zhang]

>>> d.values()
[60, 80]

字典合并:使用update()方法可以两个字典进行合并。

>>> d1={a:100,b:99}
>>> d.update(d1)
>>> d
{chen: 60, a: 100, b: 99, zhang: 80}

 

完整demo:

d={"chen":60,"zhang":80}
print(d)

d[chen]=65
print(d)

print(d.get("liu",0))

d[liu]=85
print(d)
d.pop(liu)
print(d)

print(d.keys())
print(d.values())

d1={a:100,b:99}
d.update(d1)
print(d)

 

二、集合set

1.set用于存储一组不重复的key值集合,但是不存储其value。

2.set有两种创建方式:

  • 用set函数,参数是list集合,例如:s=set([1,2,3,4,5]);
  • 用大括号包起来的集合字面量,例如: s={1,3}。

3.set常用操作

  • add(key)方法向set中添加元素,如果元素已经存在则不会生效
  • remove(key)方法可以删除元素。
  • | 操作符可以取集合并集
  • & 操作符取集合交集
  • - 求两个集合的差
  • ^求两个集合的异或。
>>> s=set([1,2,3,4,5])
>>> print s
set([1, 2, 3, 4, 5])

>>> s.add(6)
>>> print s
set([1, 2, 3, 4, 5, 6])

>>> s.add(6)
>>> print s
set([1, 2, 3, 4, 5, 6])

>>> s.remove(6)
>>> print s
set([1, 2, 3, 4, 5])

>>> s1=set([3,5,7])
>>> print s&s1
set([3, 5])

>>> print s|s1
set([1, 2, 3, 4, 5, 7])
>>> print s1-s

set([7])
>>> print s^s1
set([1, 2, 4, 7])

 

  • issubset():判断一个集合是否为另外一个集合的子集;
  • issuperset():判断一个集合是否为另外一个集合的超集。
>>> s
set([1, 2, 3, 4, 5])

>>> {1,3,5}.issubset(s)
True

>>> s.issuperset({1,5})
True

 

以上是关于Python-字典dic和集合set的主要内容,如果未能解决你的问题,请参考以下文章

Python 字典(dic)操作

python day08 字典元组集合内置方法

python组合数据类型和数据结构

字典 dict 集合set

05,.字典,集合

python_day3[set,函数,全局变量]