疑问点:
日常工作中,面对 list,字符串中重复的数据,除了进行循环外,怎么快速进行去重?

带着这样的问题,我们今天来认识下 python 的内置方法 set()

Step1:

我们先看下 set 方法源码:

set 方法源码
可以看出:

set()中输入参数一定要为 iterable,那么在 python 中有哪些类型是可以 iterable 的呢?

set() 返回结果为是新的一个无序不重复元素集,大家可以打印下 set() 的 type 类型为 ,并且不改变原来的值

Step2:

接着回来上面的问题,有哪些类型的数据可以 iterable 呢?

首先,可以直接作用于 for 循环的数据类型有以下几种:

一类是集合数据类型,如 list、tuple、dict、set、str 等;

一类是 generator,包括生成器和带 yield 的 generator function。

然后,判断一个对象是否可 iterable,可以使用 isinstance() 判断一个对象是否是 Iterable 对象:

Step3:

有了上述了解后,我们看下 set()具体使用场景:(具体通过两个 list 进行比较)

a) 使用运算符(取交集、并集、两个 list 各自的差集)

b) 使用 set() 集合的函数

总结:

set() 可以很好的帮我们去解决遇到多个集合的比较的问题,也启发我们在使用最基础的 for 循环,还有其他之外更好的方法去提升和改善我们的代码


↙↙↙阅读原文可查看相关链接,并与作者交流