Mieux vaut en général un code écrit avec indentation que sans. En Python il n'y a pas de délimiteurs pour les boucles, tests, définition de fonctions, etc : c'est l'indentation qui a ce rôle
for i in range(0,10):
print(i)
def f(x):
y=x**2
if (x>0):
y=-x
return y
Attention au copier/coller, en cas de mélange de la vraie tabulation et d'espaces il se peut que Python retourne un message d'erreur.
Il faut faire attention à certaines variables qui son immuables. Par exemple
In [5]: a=[1,2,4]
In [6]: b=a
In [7]: b.append(10), print(a)
[1, 2, 4, 10]
Out[7]: (None, None)
alors que
In [8]: a=3
In [9]: b=a
In [10]: b=10, print(a)
3
Les entiers, flottants, chaînes de caractères sont immuables. Mais les listes, dictionnaires (et autres types définis dans des extensions) sont mutables.
Boucle : range(0,10) de 0 à 9, range(5,-1,-1) boucle décroissante
Tests : if, elif, else et les booléens usuels
if x==3:
print ("X vaut 3")
elif x==2:
print ("X vaut 2")
else:
print ("X ne vaut ni 2 ni 3")
x = 3
while x < 10:
if x > 7:
x += 3
continue
x = x + .5
if x == 8:
break
print("C'est terminé")
Pour définir une fonction (au sens large) : def
In [11]: def f(t,x):
....: a=3
....: return t*x, a*x**2
....:
In [12]: y, z = f(1,2)
In [13]: print(y,z)
2 12
In [14]: def f(t,x):
....: a=3
....: return t*x, a*x**2
....:
In [15]: def f2(t,x):
....: global a
....: a=3
....: return t*x, a*x**2
....:
In [16]: a=10
In [17]: f(1,2), print(a)
10
Out[17]: ((2, 12), None)
In [18]: f2(1,2), print(a)