选择列表中最早的条目

2024-03-28

如果我有一个包含人员姓名和日期的列表,并且我只想保留每个人最早日期的条目,我该怎么做?我希望最终列表按姓氏字母顺序排列,然后是名字,并且仅包含末尾日期最早的条目。

这是列表和我尝试过的示例,但它只是再次给了我相同的列表。

L1=['Smith, John, 1994', 'Smith, John, 1996', 'Smith, John, 1998', 'Smith, Joan, 1993', 'Smith, Joan, 1995', 'Smith, Jack, 1989', 'Smith, Jack, 1991', 'Jones, Adam, 2000', 'Jones, Adam, 1998', 'Jones, Sarah, 2002', 'Jones, Sarah, 2005', 'Brady, Tom, 2001', 'Brady, Tonya, 2002']

L1.sort()

L2= []

for item in L1:
    if item.split(',')[:2] not in L2:
        L2.append(item)

最终产品应如下所示:

L2=['Brady, Tom, 2001', 'Brady, Tonya, 2002', 'Jones, Adam, 1998', 'Jones, Sarah, 2002', 'Smith, Jack, 1989', 'Smith, Joan, 1993', 'Smith, John, 1994']

任何帮助或见解将不胜感激!


Try

L1.sort()
[next(j) for i, j in itertools.groupby(L1, lambda x: x.rsplit(",", 1)[0])]

由于您正在搜索,因此您的代码不起作用L2 for item.split(',')[:2],这只是名称。但是列表中的字符串由名称和年份组成 - 这就是为什么not in总是产生True.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

选择列表中最早的条目 的相关文章

随机推荐

  • 如何获取最顶层活动的标识符?

    我有一个服务 当最顶层的 Activity 发生变化时 它的行为必须改变 假设 活动 A 处于活动状态 然后服务开始某种处理 当 Activity A 不再可见时 此处理必须停止 用户按下 后退 主页 或执行任何其他操作使 Activity
  • MySQL 记录 UPDATE 应该会失败,但实际上却没有。为什么?

    这是一个有趣的情况 我用 MySQL 开始一个事务 我的交易涉及3个相关查询 每个查询都必须成功 如果没有成功 则不应将任何查询写入数据库 现在 故意 对于第二个查询 这恰好是一个更新查询 我改变了 标识要更新为无效 不存在 PK 值的记录
  • 在散点图中将值绘制为符号的最简单方法?

    在回答我之前关于修复 4D 数据散点图像的色彩空间的问题时 Tom10 建议将值绘制为符号 以便仔细检查我的数据 一个好主意 我过去运行过一些类似的演示 但我一生都找不到我记得的演示非常简单 那么 将数值绘制为散点图中的符号 而不是 o 的
  • IPv6 地址的正则表达式

    我有一个 IPv6 地址的正则表达式 如下所示 IPV4ADDRESS t digit 1 3 3 digit 1 3 t x4 xdigit 1 4 xseq x4 x4 0 7 xpart xseq xseq xseq xseq IPV
  • Scala sbt:sbt 中的多个依赖项

    我是 Scala 的新用户 正在按照创建 scala sbt 项目的方式进行操作 https www youtube com watch v Ok7gYD1VbNw https www youtube com watch v Ok7gYD1
  • 如何在shell中剪切字符串的第一列(可变长度)

    如何在shell中剪切字符串的第一列 可变长度 字符串的前 23006 帮助 txt 我需要 23006 作为输出 很多方法 cut d f1
  • 为什么我的 WebClient 大多数时候会返回 404 错误,但并非总是如此?

    我想要获取有关我的程序中的 Microsoft 更新的信息 但是 服务器在大约 80 的情况下会返回 404 错误 我将有问题的代码归结为这个控制台应用程序 using System using System Net namespace W
  • 实施 Dijkstra 算法

    我的任务是 大学课程 实施某种形式的寻路 现在 在规范中 我可以实现强力 因为要搜索的节点数量有限制 开始 中间两个 结束 但我想重新使用此代码并来实现迪杰斯特拉算法 http en wikipedia org wiki Dijkstra
  • 如何防止android服务被杀死(带通知的服务)

    我正在开发一个需要不断显示通知的应用程序 我有一项服务可以每秒显示一次通知 当资源不足时 android 就会终止我的服务 我已经从 onStartCommand 给出了返回 START STICKY 因此 一段时间后 服务将重新启动 但与
  • 如何创建自定义元素扩展类的新实例

    我正在尝试以下示例谷歌开发者网站 https developers google com web fundamentals getting started primers customelements extendhtml我收到错误 Typ
  • 如何使用 Grunt 为 LESS 配置 sourceMap?

    我正在使用 grunt 0 4 2 和 grunt contrib less 0 9 0 我希望将我的 LESS 编译成 CSS 并支持源映射 我的 LESS 文件位于public less 主要的称为main less 的编译public
  • 无论如何,Bootstrap 导航栏都不会居中

    我一直在尝试使用 Bootstrap 将我的导航栏集中在导航栏的中心 这非常糟糕 我尝试过使用类似问题中的信息 例如this one https stackoverflow com questions 7165423 twitter boo
  • JS hasAttribute 带有数据属性值

    有没有一种原生方法 没有 jQuery 来检查 dom 元素是否具有具有所选值的属性 例如 assume doc has data mod do defined 这将是真的 document hasAttribute data mod 但这
  • Xamarin 表单 - 以流形式打开文件

    这可能是一个非常简单的问题 但当我们谈论流时我总是感到困惑 我正在尝试在 Xamarin Forms 项目的 Android 部分中打开一个文件 我有一个 Java IO File 我想将其转换为流 以便能够使用这个简单的函数将其发送到 A
  • 当一个值的所有者可以读取它而另一个线程更改它时,Rust 如何防止数据竞争?

    Rust 书中指出了以下内容参考文献和借用 https doc rust lang org book ch04 02 references and borrowing html mutable references 当我们有一个不可变的引用
  • 可观察,出错时重试并仅在完成时缓存

    我们可以使用cache 运算符来避免多次执行长任务 http请求 并重用其结果 Observable apiCall createApiCallObservable cache notice the cache the first time
  • JQuery 检测程序更改事件

    如果我执行 jQuery expr change function 那么当用户更改值时 我可以触发一个事件函数 如果以编程方式更改它 即如果我调用 jQuery expr val moo 是否可以触发它 或者如果一些普通的旧 JavaScr
  • Laravel 5:未找到 DB Seed 类

    我有这个 DatabaseSeeder php
  • Python正则表达式捕获各种url模式组

    我有包含这样的字符串的数据集 我想从中删除所有网址 http google com having trouble finding regex https google com for this case http google com te
  • 选择列表中最早的条目

    如果我有一个包含人员姓名和日期的列表 并且我只想保留每个人最早日期的条目 我该怎么做 我希望最终列表按姓氏字母顺序排列 然后是名字 并且仅包含末尾日期最早的条目 这是列表和我尝试过的示例 但它只是再次给了我相同的列表 L1 Smith Jo