Différences entre les versions de « Python »

De Wiki de Geonov
(Page créée avec « [https://www.python.org/ Python] est un langage informatique. Plus précisément, c'est un langage de programmation interprété. = Concaténation = Pour concaténer d… »)
 
 
Ligne 8 : Ligne 8 :
Par exemple :
Par exemple :


<source lang="python" toolbar="false">prenom = 'Jean'
<syntaxhighlight lang="python" toolbar="false">prenom = 'Jean'
nom = 'Rémy'
nom = 'Rémy'
result = "Je m'appelle " + prenom + ' ' + nom</source>
result = "Je m'appelle " + prenom + ' ' + nom</syntaxhighlight>


= Opérations sur les fichiers =
= Opérations sur les fichiers =
Ligne 18 : Ligne 18 :
Ce code ajoute le chemin des fichiers contenus par un répertoire dans une liste :
Ce code ajoute le chemin des fichiers contenus par un répertoire dans une liste :


<source lang="python" toolbar="false">import os
<syntaxhighlight lang="python" toolbar="false">import os
list = []
list = []
dir = 'c:/temp'
dir = 'c:/temp'
for filename in os.listdir(dir):
for filename in os.listdir(dir):
     list.append(dir + '/' + filename)</source>
     list.append(dir + '/' + filename)</syntaxhighlight>


{{Warning|En [[Python]] on utilise des / et non des \ dans le chemin des fichiers.}}
{{Warning|En [[Python]] on utilise des / et non des \ dans le chemin des fichiers.}}


Pour concaténer les noms de fichier de la liste en les protégeant par un " et en les séparant par une virgule :
Pour concaténer les noms de fichier de la liste en les protégeant par un " et en les séparant par une virgule :
<source lang="python" toolbar="false">import os
<syntaxhighlight lang="python" toolbar="false">import os
list = []
list = []
dir = 'c:/temp'
dir = 'c:/temp'
for filename in os.listdir(dir):
for filename in os.listdir(dir):
     list.append(dir + '/' + filename)
     list.append(dir + '/' + filename)
concat = ','.join('"' + item + '"' for item in list)</source>
concat = ','.join('"' + item + '"' for item in list)</syntaxhighlight>


== Effacer tous les fichiers sauf un ==
== Effacer tous les fichiers sauf un ==
Ligne 38 : Ligne 38 :
L'idée est de lister les fichiers d'un répertoire et de les effacer via une boucle sauf le dernier (on boucle sur la liste -1 c'est à dire la liste sans le dernier élément).
L'idée est de lister les fichiers d'un répertoire et de les effacer via une boucle sauf le dernier (on boucle sur la liste -1 c'est à dire la liste sans le dernier élément).


<source lang="python" toolbar="false">import os
<syntaxhighlight lang="python" toolbar="false">import os
names = os.listdir()
names = os.listdir()
names.sort()
names.sort()
for f in names[:-1]:
for f in names[:-1]:
     os.unlink(f)</source>
     os.unlink(f)</syntaxhighlight>


= Les dates =
= Les dates =
Ligne 50 : Ligne 50 :
== Date du jour ==
== Date du jour ==


<source lang="python" toolbar="false">import datetime
<syntaxhighlight lang="python" toolbar="false">import datetime
now = datetime.datetime.now()</source>
now = datetime.datetime.now()</syntaxhighlight>


== Convertir une date ==
== Convertir une date ==


<source lang="python" toolbar="false">import datetime
<syntaxhighlight lang="python" toolbar="false">import datetime
now = datetime.datetime.now()
now = datetime.datetime.now()
now_ymd = now.strftime('%y%m%d')</source>
now_ymd = now.strftime('%y%m%d')</syntaxhighlight>


== Calcul sur les dates ==
== Calcul sur les dates ==
Ligne 63 : Ligne 63 :
"timedelta" permet d'ajouter ou de retirer des jours, heures, minutes, ... à une date.
"timedelta" permet d'ajouter ou de retirer des jours, heures, minutes, ... à une date.


<source lang="python" toolbar="false">import datetime
<syntaxhighlight lang="python" toolbar="false">import datetime
now = datetime.datetime.now()
now = datetime.datetime.now()
yesterday = now - datetime.timedelta(days=1)
yesterday = now - datetime.timedelta(days=1)
now_less_5mn = now - datetime.timedelta(minutes=5)
now_less_5mn = now - datetime.timedelta(minutes=5)
now_less_5mn_bis = now + datetime.timedelta(minutes=-5)</source>
now_less_5mn_bis = now + datetime.timedelta(minutes=-5)</syntaxhighlight>


= Formatage de chaînes =
= Formatage de chaînes =


Pour des chaînes, chaque "%s" est remplacé par un élément du "tuple", dans l'ordre d'apparition :
Pour des chaînes, chaque "%s" est remplacé par un élément du "tuple", dans l'ordre d'apparition :
<source lang="python" toolbar="false">prenom = 'Jean'
<syntaxhighlight lang="python" toolbar="false">prenom = 'Jean'
nom = 'Rémy'
nom = 'Rémy'
print "mon prénom est %s et mon nom est %s" % (prenom, nom)</source>
print "mon prénom est %s et mon nom est %s" % (prenom, nom)</syntaxhighlight>


"%d" s'utilise pour les entiers et "%f" pour les décimaux.
"%d" s'utilise pour les entiers et "%f" pour les décimaux.
Ligne 86 : Ligne 86 :
== Extraction de groupes ==
== Extraction de groupes ==


<source lang="python" toolbar="false">import re
<syntaxhighlight lang="python" toolbar="false">import re
line = "75000 Paris"
line = "75000 Paris"
expression = re.match(r'^([0-9]{5}) (.*)', line)
expression = re.match(r'^([0-9]{5}) (.*)', line)
Ligne 95 : Ligne 95 :
     print(expression.group(1))
     print(expression.group(1))
     # extrait le deuxième groupe
     # extrait le deuxième groupe
     print(expression.group(2))</source>
     print(expression.group(2))</syntaxhighlight>




[[Catégorie:Langage]]
[[Catégorie:Langage]]

Version actuelle datée du 3 décembre 2020 à 15:00

Python est un langage informatique.

Plus précisément, c'est un langage de programmation interprété.

1 Concaténation

Pour concaténer des variables et des constantes, il suffit d'utiliser le caractère "+". Par exemple :

prenom = 'Jean'
nom = 'Rémy'
result = "Je m'appelle " + prenom + ' ' + nom

2 Opérations sur les fichiers

2.1 Lister les fichiers d'un répertoire

Ce code ajoute le chemin des fichiers contenus par un répertoire dans une liste :

import os
list = []
dir = 'c:/temp'
for filename in os.listdir(dir):
    list.append(dir + '/' + filename)
Note-warning.png ATTENTION : En Python on utilise des / et non des \ dans le chemin des fichiers.

Pour concaténer les noms de fichier de la liste en les protégeant par un " et en les séparant par une virgule :

import os
list = []
dir = 'c:/temp'
for filename in os.listdir(dir):
    list.append(dir + '/' + filename)
concat = ','.join('"' + item + '"' for item in list)

2.2 Effacer tous les fichiers sauf un

L'idée est de lister les fichiers d'un répertoire et de les effacer via une boucle sauf le dernier (on boucle sur la liste -1 c'est à dire la liste sans le dernier élément).

import os
names = os.listdir()
names.sort()
for f in names[:-1]:
    os.unlink(f)

3 Les dates

Pour travailler avec les dates, il faut utiliser le module "datetime".

3.1 Date du jour

import datetime
now = datetime.datetime.now()

3.2 Convertir une date

import datetime
now = datetime.datetime.now()
now_ymd = now.strftime('%y%m%d')

3.3 Calcul sur les dates

"timedelta" permet d'ajouter ou de retirer des jours, heures, minutes, ... à une date.

import datetime
now = datetime.datetime.now()
yesterday = now - datetime.timedelta(days=1)
now_less_5mn = now - datetime.timedelta(minutes=5)
now_less_5mn_bis = now + datetime.timedelta(minutes=-5)

4 Formatage de chaînes

Pour des chaînes, chaque "%s" est remplacé par un élément du "tuple", dans l'ordre d'apparition :

prenom = 'Jean'
nom = 'Rémy'
print "mon prénom est %s et mon nom est %s" % (prenom, nom)

"%d" s'utilise pour les entiers et "%f" pour les décimaux.

"%f" peut être modifié, par exemple "%.2f" tronque la valeur à 2 décimales.

5 Expressions rationnelles

Note.png NOTE : Vous pouvez également consulter la page dédiée du wiki au sujet des expressions rationnelles.

5.1 Extraction de groupes

import re
line = "75000 Paris"
expression = re.match(r'^([0-9]{5}) (.*)', line)
if expression:
    # extrait toute la ligne
    print(expression.group(0))
    # extrait le premier groupe
    print(expression.group(1))
    # extrait le deuxième groupe
    print(expression.group(2))