8. Structures de contrôle¶
8.1. Algèbre booleenne standard¶
[],{}, 0, False, None -> False
==, !=, <, <=, >, >=
and, or
8.1.1. is¶
is checke que les objets sont les mêmes
>>> a = 1
>>> b = 1
>>> a == b
True
>>> a is b
True
mais
>>> a = ["e"]
>>> b = ["e"]
>>> a==b
True
>>> a is b
False
8.2. Branchements¶
8.2.1. if¶
>>> if n == 10:
... print 'dix'
Attention [], {}, 0 != None
>>> if l != []: #pas bien
>>> if l: #bien
>>> if l == {}:
>>> if not l:
>>> if var is None:
>>> if var is not None:
8.2.2. else¶
>>> if n == 10:
... print 'dix'
... else:
... print 'inf ou egal a 5'
8.2.3. elif¶
>>> if n > 5:
... print 'sup a 5'
... elif n < 5:
... print 'inf a 5'
... else:
8.2.4. assignation conditionnelle¶
>>> var = val1 if condition else val2
8.3. loop¶
8.3.1. for¶
>>> for i in range(10):
print i
8.3.1.1. Parcourir une liste¶
>>> l = ['a', 'b', 'c']
>>> for i in l:
... print i
...
a
b
c
8.3.1.2. avec index¶
>>> for index, value in enumerate(l):
... print index, value
...
0 a
1 b
2 c
ça marche avec les listes et les strings
8.3.1.3. sortie de loop¶
>>> for i in l:
... print i
... if i == 'b':
... break
...
a
b
8.3.1.4. for .. else¶
>>> for i in xrange(10):
... if i == 20:
... print '20'
... break
... else:
... print 'pas trouve'
8.3.2. loop sur plusieurs éléments¶
>>> t = (('john', 'doe'), ('jean', 'dupont'), ('corinne', 'martin'))
>>> for first_name, last_name in t:
... print (first_name, last_name)
...
('john', 'doe')
('jean', 'dupont')
('corinne', 'martin')
8.3.3. loop sur dict¶
d = {'city': 'toulon', 'first_name': 'john', 'last_name': 'doe'}
>>> for k, v in d.items():
... print (k, v)
...
city toulon
first_name john
last_name doe
8.3.4. while¶
>>> x = 1
>>> while x <= 5:
... print x
... x += 1
...
1
2
3
4
5
Licence: CC-BY Providenz