Найти тему
SCIENCE IT

Davantage un instruments contre une évacuation Teuerung

https://as2.ftcdn.net/jpg/02/71/10/97/500_F_271109715_W550mDfkosedLFjmrHicTRq72MEwgh93.jpg
https://as2.ftcdn.net/jpg/02/71/10/97/500_F_271109715_W550mDfkosedLFjmrHicTRq72MEwgh93.jpg

En dehors de l'instruction while qui vient d'être introduite, Python connaît - à part quelques déviations - les instructions habituelles de contrôle de flux qui sont connues dans d'autres langues.

4.1. si les déclarations

Un exemple de la façon dont l'éducation

>>>> x = int(input("Insert an integer : "))))
Entrez un nombre entier : 42
>>> Si x <0 :
... x = 0
.... impression ('Négatif mis à zéro')
... elif x ==== 0 :
... impression ('Zéro')
... elif x ======== 1 :
.... impression ('Simple')
...plus :
... caractères d'imprimerie ("Autres")
...
Plus

ou les éliphrammes sont facultatifs. Contrairement aux autres branches, qui ne peuvent se produire qu'une seule fois, une séquence de branches multiples d'elif est possible, évitant ainsi les indentations imbriquées. Une séquence de si ......... elif.... elif branches remplacent les constructions des commutateurs ou des maisons d'autres langages de programmation.

4.2. pour les déclarations

L'instruction en Python est un peu différente de celle que vous connaissez en C ou Pascal. Non seulement vous pouvez itérer sur une séquence de nombres (comme en Pascal) ou simplement définir la taille du pas et la condition d'interruption (comme en C), mais sur n'importe quelle séquence (comme une liste ou une chaîne), dans l'ordre dans lequel les éléments sont dans la séquence. Par exemple :

>>> Déterminer la longueur de certaines chaînes de caractères :
... a = ['chat','fenêtre','jeter']
>>> pour x dans a :
... impression(x, len(x, len(x, len(x)))
...
Cat 5
Fenêtre 7
Jeter 10

La prudence est recommandée lorsque vous essayez d'apporter des modifications à une séquence en cours d'itération (ce qui, bien sûr, ne peut être fait qu'avec des types de séquences modifiables, comme des listes). Si vous voulez traiter une liste sur laquelle vous itérez, par exemple pour dupliquer des postes sélectionnés, vous devez itérer sur une copie. La notation par tranches rend les choses très faciles :

4.3 La fonction range()

Si vous avez vraiment besoin d'itérer sur une séquence de nombres, vous pouvez utiliser la fonction range() intégrée, qui crée des séquences arithmétiques.

Si un seul argument est donné, la plage générée commence à zéro et se termine par la valeur de l'argument puisqu'elle est inférieure à 1. range(10) génère des nombres de 0 à 9. Cela correspond aux index valides d'une séquence à dix éléments. Vous pouvez également commencer la plage avec une valeur différente de zéro ou spécifier une taille de pas spécifique - des pas négatifs sont également possibles.

(5, 10)
De 5 à 9
(0, 10, 3)
0, 3, 6, 9
(-10, -100, -30)
-10, -40, -70

Si vous voulez itérer sur les index d'une séquence, vous pouvez combiner range() et len() comme suit :

>>> a = ['Marie','avait','a','petit','a','a','agneau'].
>>> pour le dans la plage (lentille(a)) :
... impression(s), a[i])
...
0 Marie
1 avait
2 sur
3 petit
4 Agneau

Cependant, il est plus élégant d'utiliser la fonction enumerate() dans ces cas, voir les techniques de bouclage.

Quelque chose d'étrange se produit lorsque vous voulez simplement produire un objet de portée :

>>> imprimer (gamma(10))
plage (0, 10)

Même si l'objet retourné par range() se comporte comme une liste, ce n'est pas vraiment une liste. range() retourne un objet qui retourne les nombres individuels dans l'ordre spécifié par les arguments passés à range(). Cela permet de gagner de la place par rapport à la création d'une liste.

Nous appelons cet objet itérable, et il peut être utilisé partout où l'on s'attend à ce qu'un objet "produise" à son tour une séquence d'éléments jusqu'à épuisement de ses stocks. Par exemple, le for declaration agit comme un itérateur. La fonction list() est aussi un itérateur, qui attend un argument itérable et en fait une liste.

>>>>> liste (gamma(5))
[0, 1, 2, 3, 4]

Plus tard, d'autres fonctions qui retournent des itériables et incluent des itériables comme arguments seront discutées.

4.4. interrompre et continuer les instructions et l'autre branche en boucle

Comme dans C, une déclaration de rupture dans un corps du cycle entraîne l'abandon immédiat et immédiat du cycle qui l'entoure.

Les instructions de boucle peuvent également avoir une autre branche. Cette branche est exécutée si le cycle n'a pas été interrompu par une instruction de pause. L'exemple suivant pour le calcul des nombres premiers le montre.

>>> pour n dans la plage(2, 10) :
... pour x dans la plage(2, n) :
... si n % x ==== 0 :
... imprimer (n, "égal", x, "*", n/////x)
.... interruption
...plus :
... # ? Loop was run through without finding a factor ?
... print(n, "est un nombre premier")
...
2 est un nombre primitif
3 est un nombre primitif
4 égale 2 * 2
5 est un nombre primitif
6 égale 2 * 3
7 est un nombre primitif
8 égale 2 * 4
9 égale 3 * 3

(Oui, ce code est correct. Regardez attentivement : L'autre clause appartient à la boucle for, pas à l'instruction if.)

https://as2.ftcdn.net/jpg/02/32/98/53/500_F_232985364_62CsSdVTvI99dE6rEZHePWnOSU4TTdMQ.jpg
https://as2.ftcdn.net/jpg/02/32/98/53/500_F_232985364_62CsSdVTvI99dE6rEZHePWnOSU4TTdMQ.jpg