Python3> slice copy / slice notation> utilisé dans les instructions for, etc.

http://docs.python.jp/3/tutorial/controlflow.html#for-statements

Si vous devez modifier une séquence itérative à l'intérieur d'une boucle (par exemple, pour dupliquer un élément sélectionné), c'est une bonne idée de faire d'abord une copie. Les itérations sur les séquences ne font pas implicitement de copie. La notation de tranche rend ceci particulièrement utile:

>>> for w in words[:]:  # Loop over a slice copy of the entire list.
...     if len(w) > 6:
...         words.insert(0, w)
...
>>> words
['defenestrate', 'cat', 'window', 'defenestrate']

Dans l'exemple ci-dessus, l'histoire devient confuse si la liste elle-même change lors de l'activation de l'itérateur. J'ai compris qu'il serait préférable d'utiliser la notation de tranche dans de tels cas (peut-être faux).

Recommended Posts

Python3> slice copy / slice notation> utilisé dans les instructions for, etc.
Résumé de diverses instructions for en Python
Fonctions pouvant être utilisées dans l'instruction for
Notation de classe en Python
Un outil pour créer des images de masque pour ETC en Python
Techniques de tri en Python
Convertir la notation CIDR en Python
À propos de "for _ in range ():" de python
Insérez l'instruction Import requise pour la complétion du code Python dans Neovim
Astuces utiles liées à la liste et aux instructions en Python
Rechercher des commandes externes avec python
8 commandes fréquemment utilisées dans Python Django
Notation inclusive dans l'argument de la fonction Python
[Python] Connaissances de base utilisées dans AtCoder
[TouchDesigner] Conseils pour la déclaration par python
Exécutez unittest en Python (pour les débutants)
Afficher les formules de notation LaTeX en Python, matplotlib
Implémenter __eq__ etc. de manière générique dans la classe Python
différence entre les instructions (instructions) et les expressions (expressions) en Python
Note de nfc.ContactlessFrontend () de nfcpy de python
Inject est recommandé pour DDD en Python
Deux règles lors de la lecture de Python (notation de tranche)
Conseils pour gérer les binaires en Python
[python] Techniques souvent utilisées dans l'apprentissage automatique
Tapez les annotations pour Python2 dans les fichiers stub!
Précautions lors de l'utilisation de l'instruction for dans les pandas
[Python] Organisation de l'utilisation des instructions
Traiter plusieurs listes avec for en Python
MongoDB avec Python pour la première fois
Obtenez un jeton pour conoha avec python
Exemple de gestion des fichiers eml en Python
Fiche de triche AtCoder en python (pour moi-même)
J'ai cherché un nombre premier avec python
Conseils pour créer de petits outils avec python
Utilisez pathlib dans Maya (Python2.7) en préparation du prochain Python3.7
Tranche de Python
CERTIFICATE_VERIFY_FAILED dans Python 3.6, le programme d'installation officiel de macOS
Bases de Python (variables, types, opérateurs, instructions if, pour les instructions)
Fonctionnement sans assistance des feuilles de calcul Google (etc.) en Python
Techniques souvent utilisées dans le codage court en python (Bloc-notes)
Un programme qui supprime les instructions en double en Python
Ajouter un devis ">" pour répondre aux e-mails en Python3
Copiez la liste en Python
Corriger les fluctuations de notation demi-largeur et pleine largeur en Python
Paramètres de journalisation pour la rotation quotidienne des journaux avec python
Conseils pour accéder à l'API ATND avec Python
Afficher la bougie de données FX (forex) en Python
Tutoriel Boost.NumPy pour l'extension de Python en C ++ (pratique)
Remplissez les valeurs des variables dynamiques avec 0 en Python
Essayez de calculer RPN avec Python (pour les débutants)
Notes pour la mise en œuvre d'un co-filtrage simple en Python
N'utilisez pas readlines () dans votre instruction Python for!
[Python] La chaîne de caractères f doit être utilisée pour incorporer la chaîne de caractères
Résumé des tableaux Python fréquemment utilisés (pour moi-même)
Code souvent utilisé dans les applications Python / Django [préfectures]
Paramètres de codage Python avec Visual Studio Code