IntroductionàPython
NicolasDumoulinnicolas.dumoulin@irstea.fr
16Mai2013
Préambule
CedocumentestlibrementréutilisableselonlestermesdelalicenceGNUFDLversion1.2et
supérieures.
Vouspouvezchargercedocumentinteractifenversionnotebook(extension.ipynb),endémarrant
ipython notebookdepuislerépertoirecontenantcedocument,oubienenfaisantglisserle
documentsurlapagewebdunotebookaprèsl'avoirdémar.Voiraussiladocumentationde
notebook.
Qu'estcequePython?
Unlangage
Unesuited'outilssouslicencelibre
Unebibliothèqueenstandardbienfournie
Uneplateformepourfaire:
Desapplicationssurposteclient(Qt)
Desapplicationspourleweb(Django)
Dessurcouchesàdescodesdecalculs(C,C++,Fortran,…)
Dubidouillageinteractif
Ressourcesenlignes:
Documentationofficielle:http://docs.python.org/(NotamentleTutorialetlaLibrary
reference)
DiveintoPython:http://www.diveintopython.net/
IPythonminibook:http://ipython.rossant.net/
SciPyCookbook:http://www.scipy.org/Cookbook
Deuxmodesd'utilisation:
Modeinteractif(console)
Exécutiondescript
Premiercontact,démarrerlaconsoleinteractive:python3oupython(version2.xselonles
systèmes)Pourquitterlaconsole:[Ctrl]+[D]
In [26]:
In [27]:
Onpeuttaperuneopérationarithmétiqueetonobtientlerésultat.
Variablesettypesdedones
Letypaged'unevariableestdynamique,letypeestinférélorsdel'affectation.
In [28]:
In [29]:
In [30]:
In [31]:
In [32]:
Lavariablespéciale_contientladernièrevaleuraffichée
In [33]:
In [34]:
Chaînesdecaractère
In [35]:
3*2
Out[26]: 6
2 + 5 / 2
Out[27]: 4
i = 1
d = 0.5
s = "bonjour"
nb = 3 + 2j
type(nb)
Out[29]: complex
type(i)
...
type(d)
...
type(s)
...
3*2
Out[33]: 6
_+2
Out[34]: 8
s1 = "N'importe quoi" # avec des guillemets double, cela permet d'utiliser une apostrophe dans le texte
In [35]:
In [36]:
Problèmeavecdestypesnoncompatibles
i + s
Ondoitalorstranstyper(caster)lesvariables
In [37]:
In [38]:
Variablesbooléenes
In [39]:
Opérateursetfonctionsdebase
Onlestrouvesouslenomdebuiltinfunctionsdansladocumentationanglophone.
Lafonctionprint()permetd'afficherlecontenud'unevariable,etplusgénéralementunechaîne
decaractère.
In [40]:
s1 = "N'importe quoi" # avec des guillemets double, cela permet d'utiliser une apostrophe dans le texte
s2 = 'N\'importe quoi' # avec des guillemets simple, l'apostrophe doit être échappée avec l'antislash \
s3 = 'Je disais "N\'importe quoi"' # avec des guillemets simple, cela permet d'utiliser des guillemets doubles dans le texte
s4 = """Je disais "N'importe quoi" """ # avec trois guillemets doubles (ou simples), pas besoin d'échapper les guillemets et apostrophes
s5 = """Les triples guillemets permettent d'écrire
plusieurs lignes"""
print(s5)
Les triples guillemets permettent d'écrire
plusieurs lignes
i + d
Out[36]: 1.5
"Votre valeur est : "+str(d)
Out[37]: 'Votre valeur est : 0.5'
str(i) + s
Out[38]: '1bonjour'
true = True
vrai = true
faux = False
del vrai # supprime la variable
print(s1)
print("Ceci est un entier : "+str(i))
N'importe quoi
Ceci est un entier : 1
Lafonctionhelp()permetd'obtenirladocumentationd'unefonction(python3).
Lafonctionlenpermetdeconnaîtrelatailled'untableau
In [41]:
Opérateursetfonctionsarithmétiques
Documentation:http://docs.python.org/2/library/stdtypes.html#numerictypesintfloatlongcomplex
In [42]:
In [43]:
In [44]:
In [45]:
In [46]:
Opérateursbooléens
In [47]:
In [48]:
In [49]:
In [50]:
len("Bonjour")
Out[41]: 7
5/2 # division entière en python 2.x mais division flottante à partir de 3.0
Out[42]: 2
5.0/2
Out[43]: 2.5
5.0//2
Out[44]: 2.0
int(5.0//2) # conversion de float en int
Out[45]: 2
5%2 # reste de la division entière
Out[46]: 1
b = True
"oui" == "oui"
Out[47]: True
3+1 == 4 and 5*2 == 20
Out[48]: False
b == False or not 2 == 2 # utilisation du "et" logique et de la négation
Out[49]: False
not b == False and not 2 == 2 # la négation ne sera appliquée qu'à la première expression
In [50]:
In [51]:
Structuresdecontrôle
Documentation:http://docs.python.org/2/tutorial/controlflow.html
Attentionàl'indentation!
In [52]:
In [53]:
Lafonctionrangepermetdecréerdesintervalles
In [54]:
In [55]:
not b == False and not 2 == 2 # la négation ne sera appliquée qu'à la première expression
Out[50]: False
not (b == False and not 2 == 2) # notez la différence avec les parenthèses
Out[51]: True
i = 30
if i<30:
print("petit")
elif i==30:
print ("i vaut 30")
print("fin")
else:
print ("grand")
if i%5 == 0:
print("multiple de 5")
i vaut 30
fin
multiple de 5
if i==30: print("OK")
OK
len(range(3,10))
Out[54]: 7
for i in range(4):
print i
print "ici, c'est la boucle"
print "ici, c'est fini"
0
ici, c'est la boucle
1
ici, c'est la boucle
2
ici, c'est la boucle
1 / 15 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !