元组:tuple() 括号可以省略
元组:不可变序列,与列表相同的是可存放任意类型的数据
创建空元组:
tuple = ()
如果创建的不是一个空元组,必须要有一个逗号
元组的拆包:
tuple1=(1, 2, 3)
a, b, c = tuple1
print(a, b, c)
tuple1 = (1, 2, 3, 4)
a, b, *c = tuple1 # * 表示的是一个通配符,把所有的数据接收
print(a, b, c)
(只要是一个序列,就可以拆包)
字典:mapping {} key-value
dict1= {'name':'杨过', 'age':'18', 'gender':'男'}
当字典中的key有重复,后面的key-value会将前面的所代替。
提取的时候,直接用key 提取,如:
print(dict1['name'])
字典的获取:
1.通过key 来获取,获取方法:
dict.get(key)
修改字典:dict[key] = value, 如:
dict['name'] = '杨过'
``
```python
在这里插入代码片
当前存在的key 可以替换,当前不存在key时,直接插入key-value (添加)
添加方法:
dict.setdefault(key), 向字典中添加key-value
当key 存在时不会做任何修改,而是会返回value值
dict.update() 将其他字典中的数据添加到这个字典中
删除方法:
1.del.关键字 删除 如:
del.dict['key']
2.dict.popitem() 不需要传递参数,默认删除最后一个,有返回值,可用res= 接收, 返回值是接收的内容
3.dict.pop(key) 有返回值 res= 返回的value
可用 res = dict.pop(key, 'key不存在‘): 若不存在key时,会返回设置的默认值,不报错,若不设置默认值则会报错。
clear() 清空
拷贝:
import copy
浅拷贝:
import copy
深拷贝:
copy.deepcopy
遍历字典:
1.keys
for k in dict1.keys()
2.values()
for v in dict1.valus():
3.items()
for k, v in dict1.items():
print(k, '=', v)
集合:
集合只能储存不可变对象
创建空集合:
set1 = set{}
```python
在这里插入代码片
集合中不能出现重复元素,可用集合去重
集合的使用:
in , not in
添加元素:
set.add(元素)
合并:
set.update()
删除:
set.pop() 从第一个一个一个的删除
ser.remove()
不能用del , 因为集合无索引
集合的运算:
& 交集运算
| 并集运算
- 差集运算
^ 亦或集 打印两个集合不同部分
<= 检测子集
< 检测是否是真子集
= 检测是否是超集
检测是否是真超集
作业1:
a = {'name': '123', 'data': {'result': [{'src': 'python1'}, {'src': 'python2'}, {'src': 'python3'}]}}
for i in a['data']['result']:
for r in i.values():
print(r)