浅谈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 中文乱码问题深入分析
Mar 13 Python
400多行Python代码实现了一个FTP服务器
May 10 Python
python实现目录树生成示例
Mar 28 Python
Linux中Python 环境软件包安装步骤
Mar 31 Python
python3.5仿微软计算器程序
Mar 30 Python
Python简单定义与使用二叉树示例
May 11 Python
通过python的matplotlib包将Tensorflow数据进行可视化的方法
Jan 09 Python
利用python和百度地图API实现数据地图标注的方法
May 13 Python
Tensorflow不支持AVX2指令集的解决方法
Feb 03 Python
pytorch 限制GPU使用效率详解(计算效率)
Jun 27 Python
SpringBoot首页设置解析(推荐)
Feb 11 Python
Python一些基本的图像操作和处理总结
Jun 23 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
PHP如何通过表单直接提交大文件详解
2019/01/08 PHP
JS 页面内容搜索,类似于 Ctrl+F功能的实现代码
2007/08/13 Javascript
JavaScript中的对象化编程
2008/01/16 Javascript
csdn 批量接受好友邀请
2009/02/19 Javascript
Prototype源码浅析 Enumerable部分之each方法
2012/01/16 Javascript
jquery ajax属性async(同步异步)示例
2013/11/05 Javascript
js,jquery滚动/跳转页面到指定位置的实现思路
2014/06/03 Javascript
jquery弹窗插件colorbox绑定动态生成元素的方法
2014/06/20 Javascript
基于js实现投票的实例代码
2015/08/04 Javascript
javascript省市级联功能实现方法实例详解
2015/10/20 Javascript
jQuery解决IE6、7、8不能使用 JSON.stringify 函数的问题
2016/05/31 Javascript
jQuery自制提示框tooltip改进版
2016/08/01 Javascript
Bootstrap图片轮播组件Carousel使用方法详解
2016/10/20 Javascript
React学习笔记之条件渲染(一)
2017/07/02 Javascript
Vuex 使用及简单实例(计数器)
2018/08/29 Javascript
JavaScript循环遍历你会用哪些之小结篇
2018/09/28 Javascript
详解Vue2.0组件的继承与扩展
2018/11/23 Javascript
vue图片上传本地预览组件使用详解
2019/02/20 Javascript
JS中的函数与对象的创建方式
2019/05/12 Javascript
jquery实现动态创建form并提交的方法示例
2019/05/27 jQuery
Layui 带多选框表格监听事件以及按钮自动点击写法实例
2019/09/02 Javascript
vue项目中极验验证的使用代码示例
2019/12/03 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
利用django-suit模板添加自定义的菜单、页面及设置访问权限
2018/07/13 Python
Python定义一个跨越多行的字符串的多种方法小结
2018/07/19 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
3个用于数据科学的顶级Python库
2018/09/29 Python
浅谈Python反射 & 单例模式
2019/03/21 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
泰国最新活动和优惠:Megatix
2020/05/07 全球购物
J2EE是技术还是平台还是框架
2016/08/14 面试题
《临死前的严监生》教学反思
2014/02/13 职场文书
总账会计岗位职责
2014/03/13 职场文书
小学生环保标语
2014/06/13 职场文书
如何使用pdb进行Python调试
2021/06/30 Python