Comment remplacer des éléments dans une liste Python basée sur une logique booléenne conditionnelle ?

Linda Hamilton
Libérer: 2024-10-17 18:24:03
original
110 Les gens l'ont consulté

How to Replace Elements in a Python List Based on Conditional Boolean Logic?

Remplacement de la liste Python par une logique booléenne conditionnelle

Étant donné une liste de valeurs, vous souhaiterez peut-être remplacer sélectivement des éléments spécifiques par Aucun en fonction d'un condition. La condition, définie par une fonction condition(), peut déterminer s'il faut remplacer un élément en fonction de sa valeur. Cette question explore différentes manières de réaliser ce remplacement en Python tout en fournissant un exemple de condition qui remplace les éléments impairs.

Solution 1 : Compréhension de liste

Le moyen le plus efficace pour effectuer ce remplacement, il faut utiliser une compréhension de liste. Cette approche génère une nouvelle liste, préservant l'ordre d'origine tout en remplaçant les éléments correspondants :

<code class="python">new_items = [x if x % 2 else None for x in items]</code>
Copier après la connexion

Dans cet exemple, les éléments divisibles par 2 (nombres pairs) sont conservés, tandis que les nombres impairs sont remplacés par Aucun.

Solution 2 : Modification sur place

Alternativement, vous pouvez modifier directement la liste d'origine. Cependant, cette approche est légèrement moins efficace :

<code class="python">for index, item in enumerate(items):
    if not (item % 2):
        items[index] = None</code>
Copier après la connexion

Cette méthode parcourt la liste et remplace les éléments impairs par Aucun sur place.

Analyse de la complexité temporelle

Les deux solutions ont une complexité temporelle linéaire de O(n), indiquant que leur durée d'exécution augmente proportionnellement au nombre d'éléments dans la liste.

Benchmarks de performances

Les benchmarks de performances montrent des différences négligeables entre les deux solutions. Cependant, pour les grandes listes, la compréhension de la liste est légèrement plus rapide.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!