dict字典类似于c++ stl 中的map
set类似于stl中的set,无重复集合
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#字典的表达形式
d = {'zhangsan':1, 'lisi':2, 'wangwu':3}
print(d['zhangsan'])
#通过key来修改字典中键值对
d['zhangsan'] = 99999
print(d['zhangsan'])
d['zhangsan'] = 66666
print(d['zhangsan'])
#一个key对应一个value
#后面的值冲掉前面的值
#判断key是否存在
if 'zhangsan' in d:
print('yes')
else:
print('no')
#通过dict给予的get方法,可设定返回值,默认返回None(可以指定第二个参数返回值
if d.get('zhangsan'):
print('yes')
#设定返回值为-1
print(d.get('Kylinls', -1))
#删除一个key,用pop(key)方法,同时删除value
print(d)
d.pop('wangwu')
print(d)
输出结果为
99999
66666
yes
yes
-1
{'lisi': 2, 'zhangsan': 66666, 'wangwu': 3}
{'lisi': 2, 'zhangsan': 66666}
dict的特点就是空间换时间。其中的key具有不可变性
SET
传入list作为输入集合
重复元素在set中自动过滤
通过add()函数添加元素到set
s.add(1)
remove( )删除元素
s.remove(1)
两个集合可以进行数学意义上的处理
s1 & s2
结果为交集
s1 | s2
结果为并集
对不可变对象str进行操作
s.replace('a', 'A')
s不发生改变