a = [1,2,2,3,3,4,5,6]

1、第一种方法def get_unique_N(iterable, N):

"""Yields (in order) the first N unique elements of iterable.

Might yield less if data too short."""

seen = set()

for e in iterable:

if e in seen:

continue

seen.add(e)

yield e

if len(seen) == N:

return

k = get_unique_N([1,2,2,3,3,4,5,6], 4)

print(list(k))

输出结果:

[1,2,3,4]

2、第二种方法def unique_everseen_limit(iterable, limit=5):

seen = set()

seen_add = seen.add

for element in iterable:

if element not in seen:

seen_add(element)

yield element

if len(seen) == limit:

break

res = list(unique_everseen_limit(a)) # [1, 2, 3, 4, 5]

3、第三种方法from itertools import islice

def unique_everseen(iterable):

seen = set()

seen_add = seen.add

for element in iterable:

if element not in seen:

seen_add(element)

yield element

res = list(islice(unique_everseen(a), 5)) # [1, 2, 3, 4, 5]

4、第四种方法from itertools import islice

from more_itertools import unique_everseen

from toolz import unique

res = list(islice(unique_everseen(a), 5)) # [1, 2, 3, 4, 5]

res = list(islice(unique(a), 5)) # [1, 2, 3, 4, 5]

python取列表前几个元素_Python 获取list(列表)前n个不重复元素相关推荐

  1. python数组中最大元素_Python获取numpy数组中最大的5个元素(保持原顺序)

    本文主要演示numpy的argsort()函数的用法.这个函数的返回值是数组中的元素排序后的原下标,例如np.argsort([3,1,2])的返回结果是array([1, 2, 0], dtype= ...

  2. python 判断两个列表间是否具有包含关系以及获取子列表在父列表中的索引

    python 判断两个列表间是否具有包含关系以及获取子列表在父列表中的索引 import operator def get_sub_list_index(parent_list, sub_list): ...

  3. python取列表前几个元素_Python下几种从一个序列中取出元素的方法

    使用Python进行数据处理时,有时候会有这样的操作,比如从一个列表或者numpy array中随机取出一个元素,对一个列表中的元素进行shuffle,等等.虽然这些操作也可以通过编写很简短的程序完成 ...

  4. python 列表有几个元素_python怎么向列表中添加多个元素

    python的列表是多变灵活的数据结构,向列表中添加元素,可以使用append()方法,或者extend()方法,还可使用insert()方法.insert() 主要用来插入元素,当向列表末尾添加元素 ...

  5. python列表取出元素_python中的列表,添加元素,获取元素,删除元素,列表分片,常用操作符...

    一. 创建列表,分为创建普通列表,混合列表,和空列表.其中混合列表是指string,int, float等都可以写在同一个列表里,空列表是指列表可以为空 二. 在列表添加成员方法 1. append( ...

  6. python去重复元素_Python实现去除列表中重复元素的方法总结【7种方法】

    这里首先给出来我很早之前写的一篇博客,Python实现去除列表中重复元素的方法小结[4种方法],感兴趣的话可以去看看,今天是在实践过程中又积累了一些方法,这里一并总结放在这里. 由于内容很简单,就不再 ...

  7. python删除列表一段元素_Python基础--list列表删除元素

    列表中删除元素主要分为以下 3 种场景: 根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法: 根据元素本身的值进行删除,可使用列表(list类型)提供的 remove ...

  8. python列表同时添加多个元素_python怎么向列表中添加多个元素

    python的列表是多变灵活的数据结构,向列表中添加元素,可以使用append()方法,或者extend()方法,还可使用insert()方法.insert() 主要用来插入元素,当向列表末尾添加元素 ...

  9. python列表批量删除元素_Python基础--list列表删除元素

    列表中删除元素主要分为以下 3 种场景: 根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法: 根据元素本身的值进行删除,可使用列表(list类型)提供的 remove ...

最新文章

  1. Java项目:后台管理系统脚手架项目(java+SpringBoot+FreeMarker+mysql+JSP)
  2. 区块链与边缘计算(1)基本概念
  3. WatchDog工作原理
  4. product category no need to optimize
  5. 【DAY2】hadoop 完全分布式模式配置的学习笔记
  6. Linux 命令(79)—— pidof 命令
  7. 【C语言】冒泡排序与回文判断
  8. java web 题_Java+web考试题预备
  9. Atitit 演讲常用肢体语言与手势总结 目录 1. 原则 ,哑语一样,手势不只是补充。。。 1 2. 比拟实际物体与抽象物体 1 2.1. 三个实用的手势: 1 2.2. (五)、演讲中忌讳的动作
  10. Proteus 8.12 仿真软件安装(Proteus8.6Proteus8.14下载)
  11. mysql数据库基础知识--入门必看
  12. 厦门大学仪器仪表工程专业考研上岸经验分享
  13. m3u8 视频下载 ——M3U8 GETTER 批量下载版 使用说明
  14. mysql日期相减返回月数_MySql日期相减返回月数_MySQL
  15. IDEA添加项目启动配置
  16. 关于本公众号科研交流群(微信群)的说明
  17. Localhost到底是干什么用的?
  18. jQuery下载安装详细教程,jQuery入门必备
  19. android跨应用调用方法是,Android如何实现不同应用之间的调用
  20. 基于国服DOTA2的反和谐vpk

热门文章

  1. 线性代数 第一章 行列式
  2. selenium2与python自动化6-select下拉框
  3. SQL语言之事务处理语言(Oracle)
  4. 一天1个机器学习知识点(五)
  5. 这些屌毛总是给订阅号发x图,连夜肝了一个微信订阅号鉴黄机器人抵御~
  6. 3000 字说说跨域!面试官听完之后露出了满意的笑容
  7. Activiti工作流从入门到入土:入门实例
  8. java序列化和反序列化以及序列化ID的作用分析
  9. 网络爬虫初步:从访问网页到数据解析
  10. Android细节问题总结(一)