浅谈python元素如何去重,去重后如何保持原来元素的顺序不变


Posted in Python onFebruary 28, 2020

python列表元素去重后如何保持原来的顺序不变

原列表:

list1 = [1,2,1,4,9,3,5,2,6,7,3,1,6,8,4,0]

去重,使用集合set来去重:

list2 = list(set(list1)

set去重得到的list2默认按升序进行排序:

list2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

使list2按照list1元素出现的顺序进行排序(也就是原来的顺序):

list2.sort(key = list1.index)

此时,list2 = [1, 2, 4, 9, 3, 5, 6, 7, 8, 0]

具体的实现过程如下:

浅谈python元素如何去重,去重后如何保持原来元素的顺序不变

补充拓展:python爬取链接去重

我就废话不多说了,直接上代码吧!

from urllib.request import urlopen
from bs4 import BeautifulSoup
import re
 
pages = set()
def getLinks(pageUrl):
	global pages
	html = urlopen("http://en.wikipedia.org"+pageUrl)
	bsObj = BeautifulSoup(html)
	for link in bsObj.findAll("a",href = re.compile("^(/wiki/)")):
		if 'href' in link.attrs:
			if link.attrs['href'] not in pages:
				#遇到新的页面
			  newPage = link.attrs['href']
			  print(newPage)
			  pages.add(newPage)
			  getLinks(newPage)
getLinks("")

以上这篇浅谈python元素如何去重,去重后如何保持原来元素的顺序不变就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python list 合并连接字符串的方法
Mar 09 Python
利用python写个下载teahour音频的小脚本
May 08 Python
浅谈用Python实现一个大数据搜索引擎
Nov 28 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
Jan 10 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
Jul 04 Python
Python字符串中添加、插入特定字符的方法
Sep 10 Python
基于Django统计博客文章阅读量
Oct 29 Python
python垃圾回收机制(GC)原理解析
Dec 30 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
Sep 21 Python
python 动态绘制爱心的示例
Sep 27 Python
Pycharm常用快捷键总结及配置方法
Nov 14 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
Feb 27 #Python
Python递归求出列表(包括列表中的子列表)的最大值实例
Feb 27 #Python
python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例
Feb 27 #Python
Python 之 Json序列化嵌套类方式
Feb 27 #Python
python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例
Feb 27 #Python
python GUI库图形界面开发之PyQt5控件数据拖曳Drag与Drop详细使用方法与实例
Feb 27 #Python
python脚本实现mp4中的音频提取并保存在原目录
Feb 27 #Python
You might like
一个数据采集类
2007/02/14 PHP
php 运行效率总结(提示程序速度)
2009/11/26 PHP
老生常谈PHP面向对象之解释器模式
2017/05/17 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
JavaScript 语言基础知识点总结(思维导图)
2013/11/10 Javascript
JS动态修改iframe高度和宽度的方法
2015/04/01 Javascript
解决jquery appaend元素中id绑定事件失效的问题
2017/09/12 jQuery
React中的refs的使用教程
2018/02/13 Javascript
微信小程序实现日期格式化和倒计时
2020/11/01 Javascript
vue移动端城市三级联动组件使用详解
2019/07/26 Javascript
vue使用高德地图点击下钻上浮效果的实现思路
2019/10/12 Javascript
关于Vue中axios的封装实例详解
2019/10/20 Javascript
Vue时间轴 vue-light-timeline的用法说明
2020/10/29 Javascript
原生JS实现拖拽功能
2020/12/16 Javascript
[03:07]完美世界DOTA2联赛PWL DAY10 决赛集锦
2020/11/11 DOTA
tensorflow 获取模型所有参数总和数量的方法
2018/06/14 Python
使用Python实现从各个子文件夹中复制指定文件的方法
2018/10/25 Python
django在保存图像的同时压缩图像示例代码详解
2020/02/11 Python
python制作一个简单的gui 数据库查询界面
2020/11/19 Python
python requests库的使用
2021/01/06 Python
plt.figure()参数使用详解及运行演示
2021/01/08 Python
CSS3选择器新增问题的实现
2021/01/21 HTML / CSS
英国演唱会订票网站:Ticket Selection
2018/03/27 全球购物
可持续木材、生态和铝制太阳镜:Proof Eyewear
2019/07/24 全球购物
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
大学军训感想
2014/02/12 职场文书
婚礼答谢宴主持词
2014/03/14 职场文书
小学老师寄语大全
2014/04/04 职场文书
初三开学计划书
2014/04/27 职场文书
小学模范班主任事迹材料
2014/05/13 职场文书
经营理念口号
2014/06/21 职场文书
大学团日活动新闻稿
2014/09/10 职场文书
英文邀请函
2015/02/02 职场文书
会议营销主持词
2015/07/03 职场文书
详解MySQL数据库千万级数据查询和存储
2021/05/18 MySQL
Python 数据可视化之Bokeh详解
2021/11/02 Python