commandes utiliseés : open(), write(), close(), latex() , str() .

utiliser Python pour produire du code LaTeX

Nous allons commencer par la bibliothèque Sympy qui possède une fonction latex() très pratique. Imaginons que l'on veuille afficher une matrice de Hilbert d'ordre 8 et son déterminant ainsi que son inverse et son déterminant.

Le code

from sympy import *

m = Matrix(8,8,lambda i,j: Rational(1,1+i+j))
print latex(m)
u=m.inv()
print latex(u)
print m.det()
print u.det()

Ce code va produire dans la console du code LaTeX que l'on pourra copier et coller. Quelques modifications simples permettent d'obtenir un résultat acceptable.

Un aperçu de la matrice obtenue avec LaTeX.

On apprend que son déterminant est égal à 1/365356847125734485878112256000000



Télécharger le source .tex

Télécharger le pdf obtenu

Écrire dans un fichier

Au lieu de faire un copier-coller, on peut écrire dans un fichier comme avec le code suivant.

from sympy import *
code = open("fichier.txt","w")
m = Matrix(8,8,lambda i,j: Rational(1,1+i+j))
code.write(latex(m)+'\n\n')
u=m.inv()
code.write(latex(u)+'\n\n')
code.write(str(m.det())+'\n\n')
code.write(str(u.det())+'\n\n')
code.close


Télécharger le fichier texte produit par Python

Commentaire

open("fichier.txt","w") crée un fichier w signifie qu'on peut écrire. Attention si le fichier existe déjà, il sera d"abord effacé. Si on veut ajouter du texte, utiliser "a"

\n dans une chaîne de caractères indique un passage à la ligne.

str() transforme un nombre en chaîne

fait le 24 janvier 2009