Проверить, являются ли все элементы списка ложными

PythonPythonBeginner
Практиковаться сейчас

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

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В Python мы можем использовать функцию all() для проверки, являются ли все элементы списка истинными. Но что, если мы хотим проверить, являются ли все элементы списка ложными? В этом испытании вам нужно будет создать функцию, которая проверяет, являются ли все элементы списка ложными.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python/BasicConceptsGroup -.-> python/booleans("Booleans") python/BasicConceptsGroup -.-> python/comments("Comments") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/DataStructuresGroup -.-> python/lists("Lists") python/DataStructuresGroup -.-> python/tuples("Tuples") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/default_arguments("Default Arguments") python/FunctionsGroup -.-> python/lambda_functions("Lambda Functions") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") subgraph Lab Skills python/booleans -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/comments -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/for_loops -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/lists -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/tuples -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/function_definition -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/default_arguments -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/lambda_functions -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} python/build_in_functions -.-> lab-13699{{"Проверить, являются ли все элементы списка ложными"}} end

Проверить, являются ли все элементы списка ложными

Напишите функцию на Python под названием none(lst, fn = lambda x: x), которая принимает список lst и необязательную функцию fn в качестве аргументов. Функция должна возвращать True, если все элементы списка ложные, и False в противном случае. Если предоставлена необязательная функция fn, она должна использоваться для определения истинности каждого элемента в списке.

Для определения того, является ли элемент ложным, вы можете использовать те же правила, что и функция bool() в Python. В общем, следующие значения считаются ложными:

  • False
  • None
  • 0 (целое число)
  • 0.0 (число с плавающей точкой)
  • '' (пустая строка)
  • [] (пустой список)
  • {} (пустой словарь)
  • () (пустой кортеж)
  • set() (пустое множество)

Если предоставлена необязательная функция fn, она должна принимать один аргумент и возвращать булево значение. Функция будет вызываться для каждого элемента в списке, и возвращаемое значение будет использоваться для определения истинности элемента.

def none(lst, fn = lambda x: x):
  return all(not fn(x) for x in lst)
none([0, 1, 2, 0], lambda x: x >= 2 ) ## False
none([0, 0, 0]) ## True

Резюме

В этом испытании вы узнали, как создать функцию на Python, которая проверяет, являются ли все элементы списка ложными. Вы также узнали, как использовать необязательную функцию для определения истинности каждого элемента в списке.