import d'un module
import math print (math.cos(1)) from math import cos print (cos(1)) from math import * # cette syntaxe est déconseillée car il est possible qu'une fonction print (cos(1)) # porte le même nom qu'une des vôtres
premier fichier : monmodule.py
import math def fonction_cos_sequence(seq) : return [ math.cos(x) for x in seq ] if __name__ == "__main__" : print ("ce message n'apparaîtra pas toujours")
second fichier : le programme principal
import monmodule print ( monmodule.fonction_cos_sequence ( [ 1, 2, 3 ] )
écrire un fichier texte
mat = ... # matrice de type liste de listes with open ("mat.txt", "w") as f : # création d'un fichier for i in range (0,len (mat)) : # for j in range (0, len (mat [i])) : # f.write ( str (mat [i][j]) + "\t") # f.write ("\n") #
écrire un fichier texte (version condensée)
mat = ... # matrice de type liste de listes with open ("mat.txt", "w") as f : # création d'un fichier f.write ( '\n'.join ( [ '\t'.join( [ str(x) for x in row ] ) for row in mat ] ) )
lecture d'un fichier texte
with open ("mat.txt", "r") as f : # ouverture d'un fichier mat = [ row.strip(' \n').split('\t') for row in f.readlines() ]
contenu d'un répertoire
import os for f in os.listdir('.'): print (f)
téléchargement des discours du président
import pyensae discours = pyensae.download_data('voeux.zip', website = 'xd')
File: seance4_module_fichier_regexp.tex, line 170
[0-9]{4}/[0-9]{2}/[0-9]{2}
File: seance4_module_fichier_regexp.tex, line 174
a{2,10}
téléchargement de discours du président Sarkozy (issue de secours)
#coding:latin-1 import urllib.request, os, os.path def charge_discours () : discours = { } for annee in [2001, 2005, 2006, 2007, 2008, 2009, 1974, 1975, 1979, 1983, 1987, 1989, 1990, 1994] : nom = "VOEUX%02d.txt" % (annee % 100) if os.path.exists (nom) : # si le fichier existe (il a déjà été téléchargé une fois) with open (nom, "r") as f : text = f.read () else : # si le fichier nexiste pas link = "http://www.xavierdupre.fr/enseignement/td_python/" + \ "python_td_minute/data/voeux_presidents/" + nom url = urllib.request.urlopen (link) text = url.read ().decode("latin-1") # on enregistre les données pour éviter de les télécharger une seconde fois with open (nom, "w") as f : f.write (text) discours [annee] = text return discours if __name__ == "__main__" : discours = charge_discours () print ("nombre de discours ", len(discours))