一、集合
1. 集合(set)
2. 集合内部数据,不可重复;可用于去重
代码如下
l1 = [ 1, 3, 5, 7, 9, 1, 4, 6, 8, 10, 20]#数组
s1 = set(l1)#数组转集合
l2 = list(s1)#集合转数组
print(s1)
print(l2)
打印结果
{1, 3, 4, 5, 6, 7, 8, 9, 10, 20}
[1, 3, 4, 5, 6, 7, 8, 9, 10, 20]
3. 集合方式可分为:集合数据增加、合并集合、交集、并集、差集
集合数据增加
代码如下
s1.add(30)
s1.add(50)
l2.insert(len(l2), 30)
l2.insert(len(l2), 50)
print(s1)
print(l2)
结果打印
{1, 3, 4, 5, 6, 7, 8, 9, 10, 50, 20, 30}
[1, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 50]
合并集合
代码如下
d1 = {1, 3, 5, 7,9}
d2 = {2, 4, 6, 8}
d1.update(d2)
print(d1)
结果打印
{1, 2, 3, 4, 5, 6, 7, 8, 9}
交集
代码如下
d3 = {1, 2, 3, 4}
d4 = {2, 3, 4, 5}
d5 = d3.intersection(d4)
print("d5", d5)
结果打印
d5 {2, 3, 4}
并集
代码如下
d6 = d3.union(d4)
print(d6)
结果打印
{1, 2, 3, 4, 5}
差集
代码如下
d7 = d4 ^ d3
print(d7)
结果打印
{1, 5}
二、元祖
元祖与数组的区别:
1. 元祖的数据,不可修改,不可删除
2. 声明方式不同
元祖与数组的共同点: 取值及常用方法类似,只要不是修改元祖数据的操做就都可以执行
1.cmp(tuple1, tuple2)
比较两个元组元素。
2.len(tuple)
计算元组元素个数。
3.max(tuple)
返回元组中元素最大值。
4.min(tuple)
返回元组中元素最小值。
5.tuple(seq)
将列表转换为元组。
三、字典
字典,约等于 json
user = {"name": "小王", "age": 18, "address": "北京"}
print(user)
结果打印
{'name': '小王', 'age': 18, 'address': '北京'}
增:增加字典词汇
new_user['name'] = 'xioli'
new_user['age'] = 21
new_user['inst'] = ['计算机', '英语', '语文']
new_user['score'] = 100
print(new_user)
结果打印
{'name': 'xioli', 'age': 21, 'inst': ['计算机', '英语', '语文'], 'score': 100}
删:删除字典词汇
通过del删除
del new_user['name'] print(new_user)
通过pop删除
print
(new_user.pop(
'name'
))
print
(new_user)
查:查询字典词汇
print(new_user['age'])
new_user.items()
new_user.keys()
new_user.values()
print("user.items", new_user.items())
print("user.keys", new_user.keys())
print("user.values", new_user.values())
改:修改(重写)字典词汇
new_user['age']=19 print(new_user)
遍历:
通过keys遍历
for i in new_user.keys(): print(i, "的值是:") print(new_user[i])
通过items遍历
for x in new_user.items(): print(x) print(x[0], x[1])
多变量循环
for k, v in new_user.items(): print(k, v)
获取结果
print(new_user.get('age')) #返回Value print(new_user.get('00088880004')) #不存在返回None
上述结果打印如下
=================增加============================================
{'name': 'xioli', 'age': 21, 'inst': ['计算机', '英语', '语文'], 'score': 100}
{1001: {'name': 'xiaozhang', 'age': 18}, 1002: {'name': 'xiaobai', 'age': 19}, 1003: {'name': 'xiaohei', 'age': 28}, 1004: {'name': 'xiaohong', 'age': 12}}
=================删除============================================
{'name': '小王', 'age': 18, 'address': '北京'}
小王
{'age': 18, 'address': '北京'}
=================修改============================================
{'age': 18, 'address': '北京', 'init': [1, 2, 3, 4, 5, 6]}
{'age': 18, 'address': '北京', 'init': [2, 3, 4, 5, 6, 7]}
==============查询===============================================
北京
18
=================遍历============================================
user.items dict_items([('age', 18), ('address', '北京'), ('init', [2, 3, 4, 5, 6, 7])])
user.keys dict_keys(['age', 'address', 'init'])
user.values dict_values([18, '北京', [2, 3, 4, 5, 6, 7]])
=========开始通过keys遍历=======
age 的值是:
18
address 的值是:
北京
init 的值是:
[2, 3, 4, 5, 6, 7]
=========开始通过items遍历=======
('age', 18)
age 18
('address', '北京')
address 北京
('init', [2, 3, 4, 5, 6, 7])
init [2, 3, 4, 5, 6, 7]
===========两个变量循环=======
age 18
address 北京
init [2, 3, 4, 5, 6, 7]
========判断key是否存在========
None
18