python 列表去重(数组)的几种方法
一、方法1
| 代码如下 | 复制代码 |
|
ids = [1,2,3,3,4,2,3,4,5,6,1] |
|
思路看起来比较清晰简单 ,也可以保持之前的排列顺序。
二、方法2
通过set方法进行处理
| 代码如下 | 复制代码 |
|
ids = [1,4,3,3,4,2,3,4,5,6,1] |
|
处理起来比较简单,使用了集合方法set进行处理,不过结果不会保留之前的顺序。
三、方法3
利用lambda匿名函数和 reduce 函数处理
| 代码如下 | 复制代码 |
| ids = [1,4,3,3,4,2,3,4,5,6,1] func = lambda x,y:x if y in x else x + [y] reduce(func, [[], ] + ids) |
|
四、方法4
使用itertools模块
| 代码如下 | 复制代码 |
|
import itertools |
|
五、无法保持原有顺序
| 代码如下 | 复制代码 |
|
liebiao=set(liebiao) |
|
六、while遍历去重
| 代码如下 | 复制代码 |
|
def delRepeat(liebiao): |
|
python 列表去重(数组)的几种方法的更多相关文章
- python 列表去重(数组)的几种方法(转)
一.方法1 代码如下 复制代码 ids = [1,2,3,3,4,2,3,4,5,6,1] news_ids = [] for id in ids: if id not in news_id ...
- python将两个数组合并成一个数组的两种方法的代码
内容过程中,把写内容过程中常用的内容收藏起来,下面的资料是关于python将两个数组合并成一个数组的两种方法的内容,希望能对小伙伴们有帮助. c1 = ["Red","G ...
- JavaScript数组的22种方法
原文:http://www.cnblogs.com/xiaohuochai/p/5682621.html javascript中数组的22种方法 前面的话 数组总共有22种方法,本文将其分为对象继 ...
- python 3.x 字典的11种方法
python 3.x 字典的11种方法2017年11月25日 01:02:11 Milton-Long 阅读数:535 标签: python python字典方法 更多个人分类: python-学习之 ...
- Jquery遍历筛选数组的几种方法和遍历解析json对象|Map()方法详解
Jquery遍历筛选数组的几种方法和遍历解析json对象|Map()方法详解 一.Jquery遍历筛选数组 1.jquery grep()筛选遍历数组 $().ready( function(){ v ...
- 「python」: arp脚本的两种方法
「python」: arp脚本的两种方法 第一种是使用arping工具: #!/usr/bin/env python import subprocess import sys import re de ...
- JQuery遍历json数组的3种方法
这篇文章主要介绍了JQuery遍历json数组的3种方法,本文分别给出了使用each.for遍历json的方法,其中for又分成两种形式,需要的朋友可以参考下 一.使用each遍历 $(functio ...
- python列表和字符串的三种逆序遍历方式
python列表和字符串的三种逆序遍历方式 列表的逆序遍历 a = [1,3,6,8,9] print("通过下标逆序遍历1:") for i in a[::-1]: print( ...
- python中执行shell的两种方法总结
这篇文章主要介绍了python中执行shell的两种方法,有两种方法可以在Python中执行SHELL程序,方法一是使用Python的commands包,方法二则是使用subprocess包,这两个包 ...
随机推荐
- [PHP100]留言板(一)
[实例]我的留言板 ** 文件结构: conn.php // 数据库配置 add.php // 操作文件 list.php //列表文件 ** 步骤 建立数据库: phpmyadmin: 建立数据库( ...
- 「Ruby && Sqlite3」How to install sqlite3 for ruby? (solve: sqlite-ruby no such file...)
error message: no such file .... 安装 gem install sqlite3-ruby -- --with-sqlite3-dir=/usr/lo ...
- jQuery触发<a>标签的点击事件后URL不跳转的解决办法
有HTML代码如下: <a id="workFrame" href="pages/work.html" target="FrameBox&quo ...
- OpenStack 镜像制作之cloud-init
Contents [hide] 1 背景 2 密钥登录 2.1 密钥登录的原理 2.1.1 openstack的私钥 2.1.2 密码注入 = 2.1.3 实际遇到的情况 2.1.4 解决办法 背景 ...
- android 项目学习随笔十七(ListView、GridView显示组图)
ListView.GridView显示组图,处理机制相同 <?xml version="1.0" encoding="utf-8"?> <Li ...
- js操作记录
让checkbox全选 $("#checkall").click(function(){ $("input[name='checklist']").prop(& ...
- SQL学习记录
一些最重要的 SQL 命令 SELECT - 从数据库中提取数据 UPDATE - 更新数据库中的数据 DELETE - 从数据库中删除数据 INSERT INTO - 向数据库中插入新数据 CREA ...
- Java生产者和消费者问题
容器类Box.java public class Box { private int num = 0; public void put(){ if(num==10){ try { System.out ...
- vi的使用规则
1.vi的基本概念 基本上vi可以分为三种状态,分别是 命令模式(command mode).插入模式(Insertmode)和 底行模式(last line mode) 各模式的功能区分如下: 1 ...
- HDU 3966:Aragorn's Story(树链剖分)
http://acm.hdu.edu.cn/showproblem.php?pid=3966 题意:有n个点n-1条边,每个点有一个权值,有两种操作:询问一个点上权值是多少和修改u到v这条链上的权值. ...