Vous étudierez la grammaire de base du système Python 3 en vous référant à "Introduction Python 3" de O'Reilly Japan. J'espère que cela sera utile pour ceux qui veulent étudier Python de la même manière.
Comparons le code qui récupère les valeurs de la liste par itération.
>>> target = ['AAA', 'BBB', 'CCC']
>>> current = 0
>>> while current < len(target):
... print(target[current])
... current += 1
...
AAA
BBB
CCC
>>> target = ['AAA', 'BBB', 'CCC']
>>> for out in target:
... print(out)
...
AAA
BBB
CCC
Le deuxième code est un meilleur code de type Python. Puisqu'une liste est un objet Python itérable (correspondant à un itérateur), son traitement avec une instruction for récupère les éléments de la liste un par un.
Outre les listes, il existe des objets itérateurs Python tels que des chaînes, des tapples, des dictionnaires, des ensembles, etc.
>>> target = 'python'
>>> for out in target:
... print(out)
...
p
y
t
h
o
n
>>> num = {0:'zero', 1:'one', 2:'two'}
>>> for out in num:
... print(out)
...
0
1
2
>>> num = {0:'zero', 1:'one', 2:'two'}
>>> for out in num.keys():
... print(out)
...
0
1
2
>>> num = {0:'zero', 1:'one', 2:'two'}
>>> for out in num.values():
... print(out)
...
zero
one
two
>>> num = {0:'zero', 1:'one', 2:'two'}
>>> for out in num.items():
... print(out)
...
(0, 'zero')
(1, 'one')
(2, 'two')
Lors du traitement de la récupération et de l'affectation en une seule étape
>>> num = {0:'zero', 1:'one', 2:'two'}
>>> for key, value in num.items():
... print('key:', key, 'value:', value)
...
key: 0 value: zero
key: 1 value: one
key: 2 value: two
Vous pouvez utiliser zip () pour parcourir plusieurs séquences en parallèle.
>>> list1 = ['1', '2', '3']
>>> list2 = ['A', 'B', 'C']
>>> list3 = ['one', 'two', 'three']
>>> for out1, out2, out3 in zip(list1, list2, list3):
... print('list1:', out1, 'list2', out2, 'list3', out3)
...
list1: 1 list2 A list3 one
list1: 2 list2 B list3 two
list1: 3 list2 C list3 three
>>> list1 = ['1', '2', '3']
>>> list2 = ['A', 'B', 'C']
>>> list( zip(list1, list2) )
[('1', 'A'), ('2', 'B'), ('3', 'C')]
>>> list1 = ['1', '2', '3']
>>> list2 = ['A', 'B', 'C']
>>> dict( zip(list1, list2) )
{'1': 'A', '2': 'B', '3': 'C'}
>>> for x in range(0, 3):
... print(x)
...
0
1
2
>>> list( range(0, 3) )
[0, 1, 2]
Recommended Posts