Ceci est un recueil de précisions syntaxiques utiles à l'écriture d'un script banal. (Ni exhaustif, ni explicatif)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
import nom_module
ou
from sys import argv
NB: cette deuxième manière évite d'avoir à retapper le nom du module en permanence
sys
)argument_1=sys.argv[1]
(NB: argv[0] renvoie le nom du script)
if __name__ == "__main__": main()
a=[1, 'c']
a.append('d')
a=('b', 12)
str(2)
int('2')
tuple(['a', 2])
list(('b', 1))
' ou “
"""Ceci est
une string
sur plusieurs lignes"""
+
'Python'+'Cheat Sheet'
print "Il y a %d %s dans mon sac" %(nb_fruit, type_fruit)
string.rstrip('\n')
data=string.split(';')
';'.join(data)
True
or False
)#'r'=read, 'w'=write, 'a'=append, 'r+'=read & write fichier=open('/path/to/file','r') # il faut alors fermer le fichier # une métode qui referme le fichier proprement: with open('/tmp/workfile', 'r') as f:
IOError
(erreur d'entrée sortie)print 'hello'
foo=raw_input("The Ultimate Question of Life, the Universe, and Everything")
NB: il existe également input(), avec laquelle python essaie de deviner le type de la variable entrée. raw_input() se contente de mettre ça dans une string.
Pour travavailler avec les chemins de fichiers : os.path
et notamment os.path.join
.
for
#pour i de 1 à 5 for i in range(1,5): instruction1 instruction2
in
: test permettant de vérifier si un élément est présent dans un itérable (une liste, un tuple, un fichier, etc).if 'x' in 'xml': instruction
for line in fichier: instruction
Switch
/case
: en 2.x python ne possède pas de structure switch, on doit se débrouiller avec des if … elif …
ou avec la structure suivante:options = {0 : zero, 1 : sqr, 4 : sqr, 9 : sqr, 2 : even, 3 : prime, 5 : prime, 7 : prime, } def zero(): print "You typed zero.\n" def sqr(): print "n is a perfect square\n" def even(): print "n is an even number\n" def prime(): print "n is a prime number\n"
Que l'on peut appeler grâce à:
options[num]()
Source: bytebaker.com
break
permet de sortir de la boucle courrantecontinue
permet de terminer l'itération courrante (passer directement à la suivante, mais sans sortir de la boucle)try … except … raise … else … finally
: Gestion des exceptionstry: instructions except Error: instructions
else
exécute son bloc si toutes les instructions du try
ont réussi; finally
s'éxécute dans tous les cas.
quit()
class formatted_string(parent_class):
def function_name(arg1,arg2=10,arg3='foo'):
NB: les arguments arg2
et arg3
sont optionnels
args = (1, 2, 3) function_name(*args) kwargs = {'arg1': [], 'arg2': 10, 'arg3': 'foo'} function_name(**kwargs)
lambda arg1, arg2: arg1 + arg2
if ((test1) & (test2))|(test3):