文章目录
Python——集合与字典
1.集合
1)集合的创建
集合(set)是一个无序的不重复元素序列。1,2,3,4,1,2,3 = 1,2,3,4创建:
1). 使用大括号 { } 或者 set() 函数创建集合;
2). 注意:创建一个空集合必须用 set() 而不是 { }
{ } 是用来创建一个空字典。
2)集合内置方法
2.集合应用案例——列表去重
1)列表去重
在抓取页面图片时,为避免重复抓取,将抓取的img结果(结果集是list类型的)通过集合去重。
方法一: 依次遍历并判断
ids = [1,2,3,3,4,2,3,4,5,6,1]
news_ids = []
for id in ids:
if id not in news_ids:
news_ids.append(id)
print news_ids
方法二: 通过set方法进行处理
ids = [1,4,3,3,4,2,3,4,5,6,1]
ids = list(set(ids))
2)明明的随机数
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从大到小排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据,希望大家能正确处理)。
import random
# 先生成n个随机数
# 列表, 集合也可以, 优先选择集合,
s = set([])
for i in range(int(input('N:'))):
# num = random.randint(1,1000)
# s.add(num)
s.add(random.randint(1,1000))
print(sorted(s))
3)Python查看微信共同好友
random, math: 内置模块
itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单。
思路:
1). 通过itchat微信个人号接口扫码登录个人微信网页版,获取可以识别好友身份的数 据。此项目需要分别登录两人微信的,拿到两人各自的好友信息存到列表中。
2). 查共同好友就转化成了查两个列表中相同元素的问题。获取到共同好友信息后, 可以通过命令行窗口print出来,也可以写入txt文件
import itchat
def get_list():
# 在命令行生成登录二维码
#itchat.auto_login(enableCmdQR