Maison  >  Article  >  développement back-end  >  Introduction aux connaissances de base des instructions conditionnelles et des instructions de boucle Python

Introduction aux connaissances de base des instructions conditionnelles et des instructions de boucle Python

高洛峰
高洛峰original
2017-03-20 09:17:221803parcourir

Cet article présente principalement les connaissances de base des instructions conditionnelles et des instructions de boucle Python. Le contenu principal comprend : 1. Les instructions conditionnelles : y compris les instructions à une branche, à double branche et à plusieurs branches, if-elif-else ; 2. Les instructions de boucle : l'utilisation de while et de simples robots d'exploration de navigateur Web 3. Les instructions de boucle : l'utilisation ; de for et parcourir des listes, des tuples, des fichiers et des chaînes.

Cet article parle des connaissances de base des instructions conditionnelles et des instructions de boucle de Python. Le contenu principal comprend :

1. déclarations , if-elif-else

2. Instruction de boucle : utilisation de while et d'un simple robot d'exploration de navigateur Web

3. utilisation de listes for et traversantes, de tuples, de fichiers et de chaînes

Préface : le bloc d'instructions

parle des instructions conditionnelles, des instructions de boucle et d'autres instructions Avant cela, complétons d'abord la connaissance des blocs d'instructions. (Nous l'avons utilisé plus tôt en parlant de fonctions)

Le bloc d'instructions n'est pas une sorte d'instruction. Il est exécuté ou exécuté plusieurs fois (boucle) lorsque la condition est vraie. (instruction conditionnelle)). Un bloc d'instructions peut être créé en plaçant un espace ou un caractère de tabulation avant le code pour mettre l'instruction en retrait. De nombreux mots ou caractères spéciaux du langage (tels que début ou {) représentent le début d'un bloc d'instructions. utilisez un autre mot ou des caractères (tels que la fin ou }) pour indiquer la fin d'un bloc d'instructions

En Python, les deux points (:) sont utilisés pour identifier le début d'une instruction. block. Chaque instruction du bloc est abrégée Indentée (le même montant d'indentation) Lorsque le montant d'indentation est le même que celui du bloc fermé, cela signifie que le bloc actuel est terminé

1. Déclaration de conditions if

Il existe trois types de base courants d'expressions d'instruction de branche if :

1.

Son format de base est :

   if condition:
   statement
   statement

Il est à noter que le si la condition d'instruction conditionnelle dans Ptthon ne nécessite pas de parenthèses (), un deux-points doit être ajouté après la condition. Il n'a pas d'accolades {} mais utilise TAB pour effectuer la distinction. Le jugement de condition inclut généralement des expressions booléennes (Vrai | Faux 0). -False|1-True, soit 0 ou true), et expressions relationnelles Formule (>=

2. Déclaration à double branche

Son format de base est :

   if condition:
   statement
   statement
   else:
   statement
   statement

3. Instruction multi-branches

Si multi-branches est composée de if-elif-else, où elif est équivalent à else if, et elle peut utiliser l'imbrication de plusieurs ifs. Le code spécifique est le suivant :

#双分支if-else 
count = input("please input:") 
print 'count=',count 
if count>80: 
 print 'lager than 80' 
else: 
 print 'lower than 80' 
print 'End if-else' 
 
#多分支if-elif-else 
number = input("please input:") 
print 'number=',number 
if number>=90: 
 print 'A' 
elif number>=80: 
 print 'B' 
elif number>=70: 
 print 'C' 
elif number>=60: 
 print 'D' 
else: 
 print 'No pass' 
print 'End if-elif-else' 
 
#条件判断 
sex = raw_input("plz input your sex:") 
if sex=='male' or sex=='m' or sex=='man': 
 print 'Man' 
else: 
 print 'Woman'

2. Instruction de boucle while

Le Le format de base de l'instruction de boucle while est le suivant :

    while condition:
     statement
     statement
    else:
     statement
     statement

La condition d'instruction conditionnelle de jugement peut être une expression booléenne, une expression relationnelle et une expression logique, et else peut être omis (répertorié ici pour le distinguer du langage C). Par exemple :

#循环while计数1+2+..+100 
i = 1 
s = 0 
while i <= 100: 
 s = s+i 
 i = i+1 
else: 
 print &#39;exit while&#39; 
print &#39;sum = &#39;,s 
 
&#39;&#39;&#39;&#39;&#39; 
输出结果为:exit while 
 sum = 5050 
&#39;&#39;&#39;

Son résultat de sortie est 5050. Lorsque i est ajouté. à 101, l'instruction else sera exécutée car i>100.

Il convient de noter que Python utilise les signes dièse (#) pour indiquer les commentaires de ligne et les guillemets triples ('''. ..''') pour indiquer des commentaires multi-lignes. Il est différent des commentaires // Line et /**/multi-line de C/C.

Ce qui suit est un morceau de code pour brosser le robot du blog. Le code est donné en premier puis expliqué :

import webbrowser as web 
import time 
import os 
i=0 
while i<5: 
 web.open_new_tab(&#39;http://andy111.blog.sohu.com/46684846.html&#39;) 
 i=i+1 
 time.sleep(0.8) 
else: 
 os.system(&#39;taskkill /F /IM iexplore.exe&#39;) 
print &#39;close IE&#39;

Sur le blog Sohu ou le blog Sina, à condition qu'il est ouvert dans une nouvelle fenêtre, le nombre de visites de navigation augmentera, donc le code ci-dessus ouvre principalement une nouvelle fenêtre en appelant open_new_tab du navigateur Web, mais le CSDN ne peut pas (on estime que cela est lié à la liaison de l'utilisateur ou de l'IP).

La fonction de la commande windowsoes taskkill dans le code ci-dessus est de tuer l'application du navigateur IE. Sous DOS, entrez "taskkill /F /IM iexplore .exe" pour fermer de force l'application. (chrome.exe ou qq.exe), où /F signifie l'arrêt forcé du programme et /IM signifie l'image. La fonction principale de ce programme est d'effacer la mémoire et d'empêcher la mémoire de planter en raison d'une consommation excessive de mémoire. Mais vous devez appeler la fonction system() de import os pour l'ouvrir, et sous Linux, utiliser la commande kill (kill -pid ou killall) pour terminer le processus

<.>

Introduction aux connaissances de base des instructions conditionnelles et des instructions de boucle Python Dans le code, time.sleep(seconds) signifie "Retarder l'exécution d'un nombre donné de secondes." Il y a un certain temps entre l'ouverture et le chargement

Lorsque vous Si vous devez augmenter considérablement le nombre de vues, vous pouvez utiliser deux niveaux d'imbrication de boucles , chaque fois que vous ouvrez 5 pages Web et les fermez, exécutez-les 100 fois, afin que votre mémoire ne se fige pas en raison d'une consommation excessive. peut également utiliser import random count=random.randint(20,40) pour générer 20 à 40 nombres aléatoires. Pour exécuter la boucle externe, le code est relativement simple, principalement parce que je souhaite y introduire des connaissances de base en Python. , lors de la première ouverture du navigateur IE, une erreur d'heures d'ouverture incohérentes apparaîtra Pourquoi ?

3. Déclaration de boucle pour

Le format de base de ceci. l'instruction de boucle est :

    for target in sequences:
    statements

target表示变量名,sequences表示序列,常见类型有list(列表)、tuple(元组)、strings(字符串)和files(文件).

Python的for没有体现出循环的次数,不像C语言的for(i=0;i

1.字符串循环

s1 = &#39;Eastmount of CSDN&#39; 
for c in s1: 
 print c,

注意:如果在print结尾加上逗号,那么接下来语句会与前一条语句在同一行打印.故上面输出显示一行.

2.列表循环

list1 = [1,3,4,5,&#39;x&#39;,12.5] 
i = 0 
for val in list1: 
 print format(i,&#39;2d&#39;),val 
 i = i+1 
else: 
 print &#39;out for&#39;

注意:列表List由一堆数据用逗号间隔,方括号括起,可以是同类型也可以是不同类型.format(i,'2d')相当于输出两位,不足的补空格.当输出0-9时显示"口0",而输出10-99时显示"10"实现对其功能.输出结果如下:

1 3 
2 4 
3 5 
4 x 
5 12.5 
ut for

因为迭代(循环另一种说法)某范围的数字是很常用的,所以有个内建的范围函数range供使用.列表中for n in [1,2,3,4,5,6,7,8]相当于listNum=range(1,9).其格式"range(start, stop[, step]) -> list of integers",它的工作方式类似于分片,它包含下限(本例range(1,9)中为1),但不包含上限(本例中9),如果希望下限为0,可以只提供上限如range(4)=[0,1,2,3].

产生1到100的数字range(1,101),输出1到100的奇数range(1,101,2),输出1到100的偶数range(2,101,2).

3.元组循环

tup = (1,2,3,4,5) 
for n in tup: 
 print n 
else: 
 print &#39;End for&#39;

元组tuple每个数据项不可修改,只可读,而序列list[1,2,3,4]可以修改.

4.文件循环

help(file.read)返回一个字符串."read([size]) -> read at most size bytes, returned as a string."

help(file.readlines)返回一个列表."readlines([size]) -> list of strings, each a line from the file."相当于读n行,由n次readline组成,读出的字符串构成列表.

help(file.readline)从某个文件读一行."readline([size]) -> next line from the file, as a string."

#文件循环遍历三种对比 
for n in open(&#39;for.py&#39;,&#39;r&#39;).read(): 
 print n, 
print &#39;End&#39; 
for n in open(&#39;for.py&#39;,&#39;r&#39;).readlines(): 
 print n, 
print &#39;End&#39; 
for n in open(&#39;for.py&#39;,&#39;r&#39;).readline(): 
 print n, 
print &#39;End&#39;

输出显示:

#第一个read()输出:每个字符间有个空格 
s 1 = &#39; E a s t m o u n t o f C S D N &#39; 
f o r c i n s 1 : 
.... 
End 
#第二个readlines()输出:读取的是一行 
s1 = &#39;Eastmount of CSDN&#39; 
for c in s1: 
.... 
End 
#第三个readline()输出:读取for.py文件第一行并输出 
s 1 = &#39; E a s t m o u n t o f C S D N &#39; 
End

如果需要文件输出也可以通过下面代码实现,使用w会覆盖而a+是追加功能,后面讲文件详细叙述.

 for r in open(&#39;test.txt&#39;,&#39;r&#39;).readlines():
 open(&#39;test.txt&#39;,&#39;a+&#39;).write(c)


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn