Itératif Python

J'ai résumé le traitement itératif de python. Pour les débutants. version python: 3.6.9 Ce qui suit est une référence pour le document officiel. [pour instruction / while instruction](https://docs.python.org/ja/3/reference/compound_stmts.html#the- while-statement) range

Utiliser la plage pour

Les répétitions qui utilisent l'objet Range sont principalement utilisées pour le traitement en boucle avec un nombre de fois spécifié. L'objet Range peut être créé en définissant range (start, stop, step), et en l'utilisant dans l'instruction for, il est possible de s'exécuter en augmentant de start à stop -1 (l'arrêt lui-même n'est pas inclus) pas à pas. Je peux le faire. Voici quelques exemples.

Répéter N fois

for i in range(5):
  print(i)
# 0 ~4 est la sortie
#L'initialiseur de plage a une valeur par défaut de 0 pour le début et 1 pour l'étape.

Commencez à partir de 1 et répétez en augmentant de 2

#Vous pouvez boucler dans n'importe quel ordre en modifiant la valeur donnée à step
for i in range(1, 10, 2):
  print(i)
#1, 3, 5, 7,9 est la sortie

Répétez tout en réduisant la valeur

Au contraire, il est possible d'exécuter en réduisant.

#le début est 10, l'arrêt est-1, l'étape est-Puisqu'il est 1, il traite de 10 à 0 en diminuant de 1.
for i in range(10, -1, -1):
  print(i)
#10 ~Sortie pendant que 0 diminue

For Voici comment utiliser «for» lorsque vous n'utilisez pas «range». Il est principalement utilisé pour les opérations collectives telles que les itérables.

Itérer sur tous les éléments tels que les listes

Cela correspond à foreach en Java. Vous pouvez traiter des objets appelés itérables. Listes, ensembles, taples, etc. (Celui qui implémente __iter__ () est appelé itérable, mais une explication détaillée est omise.)

#Répétez tous les éléments de la liste
a = [1, 3, 5, 7]
for n in a:
    print(n)

#Idem pour l'ensemble
s = {1, 2, 3, 4}
for n in s:
    print(n)

Pour le dictionnaire, la clé et la valeur sont récupérées à l'aide de la méthode du dictionnaire.

#Manipulez toutes les clés
for k in m.keys():
  print(k)

#Gérer toutes les valeurs
for v in m.values():
  print(v)

#Processus pour les paires clé / valeur
for k, v in m.items():
  print(str(k) + v)

Répéter avec l'index

Utilisez ʻenumerate` si vous voulez scanner des éléments tout en utilisant également des index.


a = ['a', 'b', 'c', 'd', 'f']
for i, n in enumerate(a):
    print(i, n)
#La sortie est la suivante.
#0 a
#1 b
#2 c
#3 d
#4 f

Traitez plusieurs itérables en même temps

Utilisez zip () si vous voulez gérer plusieurs éléments itérables en séquence en même temps.

a = [1, 2, 3, 4, 5]
b = ['a', 'b', 'c', 'd', 'e']

for i, j in zip(a, b):
    print(str(i) + j)

Notez que si les itérables ont des nombres d'éléments différents, les éléments supplémentaires (plus grand nombre d'éléments) seront ignorés.

#Parmi les éléments de la liste a, les trois derniers ne sont pas traités
a = [1, 2, 3, 4, 5, 6, 7, 8]
b = ['a', 'b', 'c', 'd', 'e']

for i, j in zip(a, b):
  print(str(i) + ' ' + j)

#1 a
#2 b
#3 c
#4 d
#5 e

# 6 ~8 n'est pas sorti!

While tandis que continue d'exécuter le traitement "tout en satisfaisant certaines conditions".

#Dans cet exemple, le traitement se poursuit tant que i est inférieur à 10.
i = 0
while i < 10:
  print(i)
  i += 1
# 0 ~9 est émis.

Le code ci-dessous est une boucle infinie, car il continue de fonctionner tant que les conditions sont remplies.

#Un exemple simple de boucle infinie
#Boucle infinie car la condition while est toujours vraie
while True:
  print('hoge')

continue, break, else «continue», «break», «sinon» ne réalise pas le traitement en boucle par lui-même, mais en combinant avec «for» et «while» mentionnés ci-dessus, le traitement peut être interrompu ou ignoré pendant le traitement en boucle. Vous pourrez.

continue continue ignore le traitement suivant et passe au traitement de boucle suivant. Il est utilisé lorsque vous ne souhaitez pas traiter dans des conditions spécifiques.

for i in range(10):
  if i % 2 == 0:
    #S'il est pair, continue est exécuté et le traitement de boucle suivant est effectué.
    continue
  print(i)
# 1,3,5,7,9 est la sortie

break break termine le processus de boucle lui-même. Il est utilisé lorsque vous souhaitez mettre fin au traitement de la boucle lorsqu'une condition spécifique est remplie.

for i in range(10):
  #Puisque le processus se termine lorsque i vaut 7, les nombres après 7 ne sont pas émis.
  if i == 7:
    break
  print(i)
#0,1,2,3,4,5,6 est la sortie

else ʻElse` est un bloc qui est exécuté une fois le traitement de la boucle terminé et lorsque la boucle n'est pas terminée par une interruption.

for i in range(10):
  print(i)
else:
  print('done!')
#0 ~Après 9 est sorti, fait!Est sortie.

Si vous sortez de la boucle avec break, else ne sera pas exécuté, donc dans l'exemple ci-dessous, la clause else ne sera pas exécutée.

for i in range(10):
  if i == 7:
    break
  print(i)
else:
  print('done!')

# 0 ~6 est la sortie et le traitement se termine

Comme mentionné ci-dessus, je le modifierai à nouveau lorsque j'aurai plus de connaissances sur le traitement des boucles.

Recommended Posts

Itératif Python
Python
[Python] Traitement itératif (for, while)
Les bases de Python ⑤
Résumé Python
Python intégré
Notation d'inclusion Python
Technique Python
Étudier Python
Compte à rebours Python 2.7
Mémorandum Python
Python FlowFishMaster
Service Python
astuces python
fonction python ①
Les bases de Python
ufo-> python (3)
Notation d'inclusion Python
Installer python
Python Singleton
mémo python
Python Jinja2
atCoder 173 Python
[Python] fonction
Installation de Python
Installer Python 3.4.3.
Essayez Python
Mémo Python
Algorithme Python
Python2 + mot2vec
[Python] Variables
Fonctions Python
Python sys.intern ()
Tutoriel Python
Fraction Python
underbar python C'est ce que
Résumé Python
Démarrer python
[Python] Trier
Remarque: Python
Les bases de Python ③
Sortie du journal python
Les bases de Python
[Scraping] Scraping Python
Mise à jour Python (2.6-> 2.7)
mémo python
Mémorandum Python
Python #sort
ufo-> python
Python nslookup
apprentissage de python
[Rpmbuild] Python 3.7.3.
Python au prorata (1)
mémorandum python
Télécharger Python
mémorandum python
Mémo Python