问:列表 test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6],如何删除该列表的重复元素?

方法1:利用集合的不重复性

# 利用集合的不重复性

test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]

# 将 列表 转换成 集合,再将集合 转换成 列表

test1 = list(set(test))

print(test1)

如果要保持列表的原有顺序,可以使用 sort 方法:

# 利用集合的不重复性

test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]

# 去重

test1 = list(set(test))

# 按照原有顺序排列

test1.sort(key = test.index)

print(test1)

方法2:利用 numpy 模块的 unique 函数

# 引入 numpy 模块

from numpy import *

test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]

test = numpy.unique(test)

print(test)

方法3:先排序然后去重

test = [1,2,3,1,3,4,5,67,7,8,54,1,2,3,4,5,6]
test_RemoveDuplicates = sorted(test)
last_num = test_RemoveDuplicates[-1] # 当前列表最后一个元素
for i in range(len(test_RemoveDuplicates)-2,-1,-1):
if last_num == test_RemoveDuplicates[i]: # 判断当前列表倒数第二个元素跟最后一个元素是否相等
del test_RemoveDuplicates[i] # 如果相等,就删除重复元素
else:
last_num = test_RemoveDuplicates[i] print(test_RemoveDuplicates)

Python【每日一问】02的更多相关文章

  1. [python每日一练]--0012:敏感词过滤 type2

    题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...

  2. Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词

    #coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...

  3. python每日一函数 - divmod数字处理函数

    python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...

  4. Python全栈day 02

    Python全栈day 02 一.循环语句 while 用法 num = 1 while num <= 10: print(num) num += 1 # 循环打印输出1-10 while el ...

  5. 每日一问:Android 消息机制,我有必要再讲一次!

    坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 我 17 年的 面试系列,曾写过一篇名为:Android 面试(五):探 ...

  6. 每日一问:谈谈 volatile 关键字

    这是 wanAndroid 每日一问中的一道题,下面我们来尝试解答一下. 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了 ...

  7. 每日一问:讲讲 Java 虚拟机的垃圾回收

    昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: 每日一问:你了解 Java 虚拟机结构么? 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的.不过在开始之前 ...

  8. 每日一问:你了解 Java 虚拟机结构么?

    对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 new 操作去写配对的 delete/free 代码.而对于我们 Android 乃至 Java 程序员 ...

  9. 每日一问:LayoutParams 你知道多少?

    前面的文章中着重讲解了 View 的测量流程.其中我提到了一句非常重要的话:View 的测量匡高是由父控件的 MeasureSpec 和 View 自身的 `LayoutParams 共同决定的.我们 ...

  10. 每日一问:简述 View 的绘制流程

    Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要.网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追 ...

随机推荐

  1. javaWeb 字体替换过滤器

    字体替换过滤器继承HttpServletRequestWrapper,重定义了: getParameter(),getParameterValues(),getParameterMap(),增强字节替 ...

  2. vue-router进阶-1-导航守卫

    导航守卫主要用来通过跳转或取消的方式守卫导航 全局守卫,使用 router.beforeEach 注册一个全局前置守卫 const router = new VueRouter({ ... }) ro ...

  3. c、c++函数随机

    #inlcude<algorithm> next_permutation函数<全排列函数> #include<stdio.h> #include<algori ...

  4. [Leetcode 18]四数之和 4 Sum

    [题目] Given an array nums of n integers and an integer target, are there elements a, b, c, and d in n ...

  5. websocket随笔

    https://github.com/littlechaser/push-service 我们在浏览器调服务器的时候使用http连接通常就能实现,但是如果要服务器数据发生变化,需要主动推送给客户端(如 ...

  6. 理解linux下的load

    我们在做Linux负载计算的时候,我们需要了解负载的几个概念 1)Linux负载是什么 2)Linux负载怎么计算 3)如何区分目前负载是“好”还是“坏” 4)什么时候应该注意哪些不正常的值   1) ...

  7. centos 进程查看

    查看pid 所属文件/项目 ps -aux |grep -v grep|grep 51073

  8. 使用GraphHttpClient调用Microsoft Graph接口 - POST

    博客地址:http://blog.csdn.net/FoxDave 本篇接上一讲,我们继续看如何通过GraphHttpClient创建一个Office 365的组,需要使用POST请求. 为结果添加按 ...

  9. thinkphp获取后台所有控制器和action

    <?phpnamespace Admin\Controller;use Think\Controller;class AuthorController extends PublicControl ...

  10. 蓝牙协议分析(5)_BLE广播通信相关的技术分析

    1. 前言 大家都知道,相比传统蓝牙,蓝牙低功耗(BLE)最大的突破就是加大了对广播通信(Advertising)的支持和利用.关于广播通信,通过“玩转BLE(1)_Eddystone beacon” ...