犹记得老师敲着黑板,强调“集合”的特性:无序、不重复,没想到多年后在咱们编程中派上了用场。
# 数据分析中,经常需要把字符串、列表中的数据去重,怎么办呢?用“集合”呀!
x = '取交集取并集取差集'
print(set(x)) # 去重,看看包含了哪些字
{'集', '取', '差', '并', '交'}
# 我们再验证一下老师交代的“无序”特性。
a = {1, 2, 3}
b = {2, 1, 3}
print('a和b相等吗?', a == b)
a和b相等吗? True
不听老师话是要吃亏的,不信的话,可以用索引或者切片访问一下集合变量试试。
继续温习一下集合的典型运算
x = {3, 4, 5}
y = {4, 5, 6, 7}
print('求交集:', x & y)
print('求并集:', x | y)
print('求异或:', x ^ y)
print('求差集:', x - y)
求交集: {4, 5}
求并集: {3, 4, 5, 6, 7}
求异或: {3, 6, 7}
求差集: {3}
敲黑板!易错点:如何创建一个空集合变量?
x = set() # 创建一个空集合
y = {} # 创建一个空字典,不是空集合!
print('看一看各自的真面目:', type(x), type(y))
看一看各自的真面目: <class 'set'> <class 'dict'>
总结:在数据分析中,经常需要去重、分析数据集差异等,别忘了“集合”这个好用、高效的工具!