« Python/L'interpréteur » : différence entre les versions
m →Sous Linux : diverses corrections |
m →Les opérateurs : corr |
||
Ligne 82 : | Ligne 82 : | ||
42 |
42 |
||
</source> |
</source> |
||
Cependant les opérateurs suivants ont des sens bien spécifiques : |
Cependant les opérateurs suivants ont des sens bien spécifiques : |
||
{|class="wikitable" style="clear:both;margin:0.5em auto 0.5em auto;border-collapse:collapse;background:#f7f8ff;padding:0.5em;text-align:center" |
{|class="wikitable" style="clear:both;margin:0.5em auto 0.5em auto;border-collapse:collapse;background:#f7f8ff;padding:0.5em;text-align:center" |
||
Ligne 92 : | Ligne 93 : | ||
| "" ''(guillemets)'' ou <nowiki>''</nowiki> ''(apostrophes)'' || Encadrement du texte || |
| "" ''(guillemets)'' ou <nowiki>''</nowiki> ''(apostrophes)'' || Encadrement du texte || |
||
|- |
|- |
||
| + ''(plus)'' || Addition, et concaténation de |
| + ''(plus)'' || Addition, et concaténation de chaînes de caractères || add(), et concat() |
||
|- |
|- |
||
| - ''(moins)'' || Négation, soustraction || neg(), sub() |
| - ''(moins)'' || Négation, soustraction || neg(), sub() |
||
Ligne 140 : | Ligne 141 : | ||
| ^ ''(accent circonflexe)'' || Bit à bit "ou exclusif" || xor() |
| ^ ''(accent circonflexe)'' || Bit à bit "ou exclusif" || xor() |
||
|- |
|- |
||
| ~ ''( |
| ~ ''(tilde)'' || Bit à bit "inversion" || invert() |
||
|} |
|} |
||
Version du 4 août 2011 à 23:56
Installation
Télécharger les sources depuis le site officiel.
Si vous n'avez pas les droits administrateurs de votre machine, il existe aussi une version portable.
Sous Windows
Après l'installation, il y a 2 façons de lancer l'application :
- Sous DOS, il est possible d'enregistrer le chemin d'accès à python dans les variables d'environnement pour écrire directement "python", au lieu de par exemple "C:\Python26\python".
- Installer Cygwin et taper "python" dans le terminal Unix.
Sous Macintosh
Python 2.3 est pré-installé depuis OS X 10.4 Tiger.
Sous Linux
Python est pré-installé depuis la version Ubuntu 6.04. Pour les autres distributions, s'il ne l'est pas il faut regarder dans les dépôts. Pour vérifier si Python est bien installé, il suffit de lancer dans un terminal :
$ python -V # V majuscule
Cette commande vous donnera le numéro de version du Python installé, ou une erreur s'il n'est pas installé.
Dans une distribution basée sur Debian comme Ubuntu, il suffit d'installer les paquets avec le gestionnaire de paquets apt :
$ sudo apt-get update # Mise à jour des dépôts
$ sudo apt-get install python # Installation
Si votre distribution ne possède pas de paquets Python, vous pouvez compiler Python depuis ses sources. Pour cela, il suffit de se rendre sur http://www.python.org/getit/, puis de suivre les instructions.
Version installée
La version de l'interpréteur est visible au lancement :
>>> Python
$ python
ActivePython 2.6.1.1 (ActiveState Software Inc.) based on
Python 2.6.1 (r261:67515, Dec 5 2008, 13:58:38) [MSC v.1500 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
Depuis cette invite de commande, il est possible d'exécuter n'importe quelle instruction Python en tapant cette instruction et en validant grâce à la touche "Entrée" d'un clavier d'ordinateur standard.
Pour exécuter un programme Python, lancer le fichier "nom_du_programme.py". Pour faire apparaître le résultat dans la fenêtre de l'invite de commande, taper sous Unix ou DOS :
python nom_du_programme.py
.
Les commandes de base
Print()
Affiche du texte :
>>> print ("Bonjour le monde !")
Bonjour le monde !
>>> print ("texte à répéter, " * 3)
texte à répéter, texte à répéter, texte à répéter,
- Attention : il existe des caractères spéciaux qui ne seront pas affichés :
- \r : aller en début de ligne.
- \n : aller à la ligne (retour chariot).
>>> print("Bonjour \n tout le monde !")
Bonjour
tout le monde !
Len()
Renvoie la longueur du paramètre :
>>> len("texte à mesurer")
15
>>>
Les opérateurs
L'interpréteur peut effectuer des actions ne nécessitant pas de mots spécifiques au langage Python, comme de simples opérations mathématiques :
>>> (4+3)*6
42
Cependant les opérateurs suivants ont des sens bien spécifiques :
Opérateur | Rôle | Méthode équivalente |
---|---|---|
# (dièse) | Introduction d'un commentaire | |
"" (guillemets) ou '' (apostrophes) | Encadrement du texte | |
+ (plus) | Addition, et concaténation de chaînes de caractères | add(), et concat() |
- (moins) | Négation, soustraction | neg(), sub() |
* (étoile) | Multiplication de chiffres, ou wildcard des caractères | mul() |
/ (barre oblique), et // | Division de chiffres | div(), truediv(), et floordiv() |
< | Inférieur à | lt() |
> | Supérieur à | gt() |
<= | Inférieur ou égal à | le() |
>= | Supérieur ou égal à | ge() |
= (égal) | Définition de variable(s) | |
== | Égal à | eq() |
!=, ou <> (chevrons) | Différent de | ne() |
() (parenthèses) | Appel d'une fonction ou méthode | call() |
[] (crochets) | Accès à une liste indexée | getitem(), getslice() |
, (virgule) | Séparation de paramètres | |
. (point) | Virgule décimale, ou séparation des paramètres avec leur méthode | |
** (étoiles) | Puissance (ou exposant) | pow() |
% | Modulo | mod() |
+= | Incrémentation | |
-= | Décrémentation | |
<< | Modification de gauche | lshift() |
>> | Modification de droite | rshift() |
& (et commercial) | Bit à bit "et" | and() |
| (barre verticale) | Bit à bit "ou" | or() |
^ (accent circonflexe) | Bit à bit "ou exclusif" | xor() |
~ (tilde) | Bit à bit "inversion" | invert() |
- L'interpréteur respecte la casse.
- Les espaces (indentation) sont interprétées comme l'inclusion des blocs entre eux. Sauter une ligne fait sortir ces blocs. Cependant, hormis ces cas l'interpréteur n'est pas sensible à la présence d'espace dans le code :
>>> 9/3
3
>>> 9 / 3 # les espaces ne sont pas pris en compte
3
>>> print ("Bonjour le monde!")
Bonjour le monde !
>>> print("Bonjour le monde!")
Bonjour le monde !
>>> x= "Bonjour le monde !"
>>> print (x)
Bonjour le monde !
>>> printx
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
NameError: name 'printx' is not defined
- L'interpréteur exécute les instructions en temps réel, dès qu'elles sont validées par l'utilisateur. Ainsi, il n'est pas possible d'exécuter plusieurs blocs d'instructions en une seule fois.
>>> def f(x): # Déclaration d'une fonction
… print 9*x+5
…
>>> f(8)
77
Help()
Elle permet d'accéder au manuel des commandes Python, ex :
>>> help("dir")
Help on built-in function dir in module __builtin__:
dir(...)
dir([object]) → list of strings
If called without an argument, return the names in the current scope.
Else, return an alphabetized list of names comprising (some of) the attributes
of the given object, and of attributes reachable from it.
If the object supplies a method named __dir__, it will be used; otherwise
the default dir() logic is used and returns:
for a module object: the module's attributes.
for a class object: its attributes, and recursively the attributes
of its bases.
for any other object: its attributes, its class's attributes, and
recursively the attributes of its class's base classes.
>>>
Exemple pour trouver tous les opérateurs et méthodes disponibles avec les nombres décimaux :
>>> help(1.5)
Help on float object:
class float(object)
| float(x) → floating point number
|
| Convert a string or number to a floating point number, if possible.
|
| Methods defined here:
|
| __abs__(...)
| x.__abs__() <==> abs(x)
|
| __add__(...)
| x.__add__(y) <==> x+y
...
Dir()
Affiche les méthodes utilisables avec l'objet en argument :
>>> dir("textes")
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__
format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__get
slice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mo
d__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__',
'__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook
__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center',
'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index
', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper',
'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', '
rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', '
strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
On peut donc exécuter toutes ces méthodes avec un texte, ex :
>>> "textes".capitalize() # Met la première lettre en majuscule
'Textes'
>>>