7
votes

Comment vérifier Python si un élément d'une liste est vide?

J'ai une liste comme

l[i] = ""


6 commentaires

Une liste vide est une liste sans éléments ( len (l) == 0 ). Considérez que cela serait vrai: l = [""]; l [0] == "" comme aurait l = [aucun]; l [0] n'est pas . Maintenant, quel est le but / l'intention? :)


Ceci est légèrement ambigu. Par "vide", voulez-vous dire que l'index existe, mais est la chaîne vide? Ou que cela n'existe pas du tout, par ex. Le nombre d'éléments est inférieur à votre index?


Avez-vous essayé l'opérateur de comparaison d'égalité? Comme: l [0] == ""


Vous ne pouvez pas simplement dire "x n'a pas fonctionné". Quelle était la comparaison spécifique que vous avez faite? Quelle erreur avez-vous obtenu?


Je sais que l'élément l [i] existe, mais comment puis-je vérifier si la chaîne est vide? (J'ai aussi testé L [i] == "" et cela ne fonctionne pas.)


@bdhar c'est comme ça que je l'ai fait maintenant. Merci!


7 Réponses :


11
votes

Essayez:

if l[i]:
    print 'Found element!'
else:
    print 'Empty element.'


1 commentaires

Ceci est le chemin.



0
votes

Contrairement dans certains Laguages, vide code> n'est pas un mot-clé à Python. Les listes de python sont construites forment la mise à la terre, donc si l'élément i code> a une valeur, puis élément i-1 code> a une valeur, pour tous les i> 0 code>.

Pour faire une vérification d'égalité, vous utilisez généralement l'opérateur == code> p>

>>> my_list = ["asdf", 0, 42, '', None, True, "LOLOL"]
>>> my_list[0] == "asdf"
True
>>> my_list[4] is None
True
>>> my_list[2] == "the universe"
False
>>> my_list[3]
""
>>> my_list[3] == ""
True



2
votes

Si vous voulez savoir si l'élément de liste à l'index i est défini ou non, vous pouvez simplement vérifier les éléments suivants: xxx

si vous recherchez quelque chose Comme ce qui est un pointeur null ou une référence nulle dans d'autres langues, Python vous offre Aucun . C'est vous pouvez écrire: xxx


0 commentaires

4
votes

Vérifiez simplement que cet élément est égal au type Aucun ou n'utilisez pas l'opérateur, ce qui équivaut au type NULL que vous observez dans d'autres langues.

if not A[i]:
    ## do whatever


0 commentaires

1
votes

Supposons xxx de sortie- 1 est vide

afin que nous puissions voir l'index 1 est vide.


0 commentaires

0
votes

J'ai entouré cela avec len () et un simple si / else instruction.

Liste des éléments reviendront comme un entier lorsqu'il est enveloppé dans len () (1 pour présent, 0 pour absent) xxx


0 commentaires

0
votes
List = []

for item in List:
    if len(item.rstrip()) != 0:
        # Do whatever you want
This will be useful if you have long string list with some whitespace and you're not considering those list values.

0 commentaires