0
votes

Compréhension de la liste "Traduction"

Quelqu'un peut-il traduire cette compréhension de la liste en plusieurs lignes, avoir vraiment des difficultés à comprendre! XXX


1 commentaires

Notez que c'est extrêmement trompeur. i est généralement utilisé pour les indices anonymes, x pour les valeurs anonymes. Mais énumérer les produit comme (index, valeur) paires, donc x est en réalité l'index ici, et i la valeur. C'est comme si quelqu'un est intentionnellement déroutant.


3 Réponses :


2
votes

Il devrait s'agir s'il est étendu. J'ai créé une liste appelée temp_list code> et j'ai ajouté le Imprimer code> pour plus de clarté.

temp_list = []
for x, i in enumerate(friends):
    if (x+1) % action:
        temp_list.append(i)

friends = temp_list
print(friends)          


0 commentaires

-2
votes

Il ressemble à ceci lors de l'élargissement: xxx


2 commentaires

C'est faux; Comme il n'utilise pas une liste temporaire , cela goutte la référence antérieure à amis ils sont itérients avant de commencer la boucle, il finit toujours avec un < Code> Liste .


@Shadowranger Ouais tu as raison. Merci de la corriger. :)



0
votes

Puisque vous êtes itération sur amis en utilisant énumérer, nous pouvons assumer amis a déjà quelques valeurs dedans.

La compréhension de la liste remplace la valeur d'origine des amis liste avec une autre liste que nous obtenons en tant que sortie de la logique de compréhension. Remarque Tout cela se fait en 1 ligne.

Si nous cassons la compréhension à la forme expansée, nous ne pouvons pas iratenir dans la liste et modifier la liste en même temps (nous pouvons le faire, mais ce n'est pas recommandé et nous Peut avoir de mauvaises valeurs).

La forme de la compréhension de la liste ci-dessus ressemblait à: xxx


0 commentaires