找出奇偶性异常值

PythonPythonBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个挑战中,你需要在给定列表中找出奇偶性异常值。奇偶性异常值是指列表中的元素,其奇偶性(奇数或偶数)与列表中大多数元素的奇偶性不同。

找出奇偶性异常值

编写一个函数 find_parity_outliers(nums),它接受一个整数列表 nums 作为参数,并返回 nums 中所有奇偶性异常值的列表。

要解决这个问题,你可以按照以下步骤进行:

  1. 使用 collections.Counter 和列表推导式来统计列表中偶数和奇数的值。
  2. 使用 collections.Counter.most_common() 来获取最常见的奇偶性。
  3. 使用列表推导式来找出所有与最常见奇偶性不匹配的元素。
from collections import Counter

def find_parity_outliers(nums):
  return [
    x for x in nums
    if x % 2!= Counter([n % 2 for n in nums]).most_common()[0][0]
  ]
find_parity_outliers([1, 2, 3, 4, 6]) ## [1, 3]

总结

在这个挑战中,你学习了如何在整数列表中找出奇偶性异常值。你使用了 collections.Counter 模块来统计列表中的偶数和奇数的值,然后找出最常见的奇偶性。最后,你使用列表推导式找出所有与最常见奇偶性不匹配的元素。