python Tutoriel de base: Python imbriqué compétences à utiliser si et d'autre dans une déclarations boucle

sucre syntaxique de Python est très forte, comme les compétences imbriquées Python à utiliser si et déclarations d' autre dans une boucle est de forcer, nous allons simplement regarder quelques exemples d' utilisation détaillée:
pour ... [si] ... Liste de construction (Liste compréhensions)
1. simple pour ... [si] ... déclaration
en Python, pour ... [si] déclaration ... Liste de construction d' une méthode simple, à partir de la liste pour les éléments sélectionnés donnée satisfait la condition si nouvelle liste dans laquelle si elle peut être omise. Ci - dessous quelques exemples simples seront décrits

>>> a=[12, 3, 4, 6, 7, 13, 21]
>>> newList = [x for x in a]
>>> newList
[12, 3, 4, 6, 7, 13, 21]
>>> newList2 = [x for x in a if x%2==0]
>>> newList2
[12, 4, 6]

Après en cas d'omission, newList Liste construit avec les mêmes éléments et a. Cependant, newList et une autre liste. Exécution b = a, b sont différents et newList. est choisi pour satisfaire newList2 Liste x% 2 == 0 éléments à partir d'une composition de la. En cas d'inutilisation ... [...] si les déclarations, les opérations suivantes doivent construire newList2.

>>> newList2=[]
>>> for x in a:
...  if x %2 == 0:
...    newList2.append(x)
>>> newList2
[12, 4, 6]

De toute évidence, en utilisant pour ... [si] ... déclaration est moins bavard.

2. Nested pour ... [...] si les déclarations
imbriquées pour ... [si] ... déclaration qui satisfait la condition si un élément composé d'une pluralité de nouvelle liste. Ici aussi quelques exemples.

>>>a=[12, 3, 4, 6, 7, 13, 21]
>>>b=['a', 'b', 'x']
>>>newList=[(x, y) for x in a for y in b]
>>>newList
[(12, 'a'), (12, 'b'), (12, 'x'), (3, 'a'), (3, 'b'), (3, 'x'), (4, 'a'), (4, 'b'), (4, 'x'), (6, 'a'), (6, 'b'), (6, 'x'), (7, 'a'), (7, 'b'), (7, 'x'), (13, 'a'), (13, 'b'), (13, 'x'), (21, 'a'), (21, 'b'), (21, 'x')]
>>>newList2=[(x, y) for x in a for y in b if x%2==0 and y<'x']
>>>newList2
[(12, 'a'), (12, 'b'), (4, 'a'), (4, 'b'), (6, 'a'), (6, 'b')]

Emboîtés pour ... [...] si les déclarations et déclaration multiples pour tout à fait avant tout pour l'instruction est la boucle la plus externe.

Python faire bon usage de la clause d' autre
dans la vie quotidienne de codage, une déclaration de branche est très courante, souvent un certain contrôle sur la logique d'exécution de code selon que certaines conditions sont remplies, nous devons donc être au courant si [Elif [autre]] . Déclaration de la Direction générale de la clause else est exécutée lorsque d' autres conditions ne sont pas remplies, les états de branchement utilisation appropriée nous permettent d'être plus abondant dans la logique de code.
Utiliser la clause autre utilisé dans le langage de programmation commune sensiblement dans la même déclaration de branche, similaire à celui fourni un chemin par défaut d'exécution, si l'utilisation d'autres instruction conditionnelle, par rapport à d' autres langages de programmation (C #, java, js etc.) en python, sinon il y a une utilisation particulière, avec pour, tandis que l'utilisation de boucles, etc., et même à l' exception de manipulation effectuée à l' aide d' essayer except peut rendre notre code plus concis.

1. ajustement pour / while utilisée
plus tard dans la clause instruction de boucle autre Ensuite, lorsque la fin du cycle normal (le cas d'un non-retour ou une rupture dans une sortie précoce comme), la logique de la clause else est exécutée à . Le regard Let un exemple:

def print_prime(n):
  for i in xrange(2, n):
    # found = True
    for j in xrange(2, i):
      if i % j == 0:
         # found = False 
        break
    else:
      print "{} it's a prime number".format(i)
    # if found:
         # print "{} it's a prime number".format(i)
print_prime(7)

résultats:

2 it's a prime number
3 it's a prime number
5 it's a prime number

Un exemple simple impression des nombres premiers, afin de déterminer si un nombre est en prime time nécessaire pour traverser plus petit que son entier, en tout cas divisible se rencontrent par les extrémités de juge, sinon imprimer c'est d' info un nombre premier, avec la bénédiction d' un autre, tout un exemple de l'équivalent logique à « auto-expressif », comme le pseudo-code est généralement une bonne compréhension et la comparaison définit la valeur du pavillon au moment de la détermination divisible puis nombres premiers message de détermination de la valeur du drapeau de jugement si les numéros imprimés à la fin de la fonction, le code plus pas de description plus concise de la façon de faire un prêt « procédure » au travail.
ps: On peut comparer le code annoté en cours d' exécution sous l'effet de l'exemple.

2. Le contrôle d'erreur à l'exception essayez d'utiliser
la déclaration de gestion des exceptions, d' autre usage similaire, lorsque le bloc d'essai sans jeter des exceptions, sinon à un bloc d'instructions est exécutée.

def my_to_int(str_param):
  try:
    print int(str_param)
  except ValueError:
    print 'cannot convert {} to a integer'.format(str_param)
  else:
    print 'convert {} to integer successfully'.format(str_param)
my_to_int("123")
my_to_int("me123")

résultats:

123
convert 123 to integer successfully
cannot convert me123 to a integer

Comme journal imprimé, en pratique le mauvais moment du succès de la conversion n'a pas eu lieu, instruction else sera exécutée dans la logique, bien sûr, cet exemple ne peut pas avoir quoi que ce soit, mais il a pu expliquer ailleurs utile dans le traitement de l' erreur : la logique simplifiée, ce qui évite l'utilisation de certains de la valeur des drapeaux sera en mesure de saisir avec précision la situation en cas d'erreur de faire une opération réelle ( par exemple lorsqu'une erreur se produit si les données stockées, la restauration de l' opération dans le bloc autre, et puis aussi suivi ainsi que finally pour terminer certaines opérations de nettoyage.
je vous remercie beaucoup la lecture
de l'Université du temps de choisir une auto-python, a révélé que manger une perte mauvaise base informatique de travail, ce n'est pas éduquée
ne peut pas faire, ne peut être acquis pour compenser, de façon à en dehors du codage a ouvert son propre contre-attaquer la route, l' apprentissage en permanence les connaissances de base de python, connaissance approfondie de l' apprentissage de base en informatique, organisé, si vous n'êtes pas disposé à la médiocrité, il est avec moi en dehors de codage, de plus en plus elle!
en fait, il n'y a pas que le technique, plus technique que ceux -ci , par exemple, comment faire une amende Programmer, plutôt que le « fil Cock », le programmeur lui - même est une présence noble, ah, non? [Cliquez pour rejoindre] voulez vous voulez être une personne noble, venez!

Publié 14 articles originaux · louange gagné 2 · Vues 6670

Je suppose que tu aimes

Origine blog.csdn.net/chengxun03/article/details/105397907
conseillé
Classement