Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Print de plusieurs lignes

2 réponses
Avatar
noone
Bonjour,

Je cherche d=E9sesp=E9rement =E0 =E9crire un fichier LaTeX =E0 l'aide d'un
script python

En Perl je fais =E7a
print <<EOF;
\\documentclass[12pt,a4paper]{article}

\\usepackage[french]{babel} % specification francaise
\\usepackage[latin1]{inputenc} % entree clavier latin1
\\usepackage[T1]{fontenc} % sortie

\\end{document}
EOF

Mais je ne sais pas comment faire un "print" de plusieurs lignes en
Python

Bon au pire je peux toujours faire =E7a ligne par ligne... mais =E7a
m'arrangerais qu'il existe
une autre solution

Merci d'avance

2 réponses

Avatar
Laurent Pointal
Le Sun, 30 Mar 2008 05:41:38 -0700, a écrit :

Bonjour,

Je cherche désespérement à écrire un fichier LaTeX à l'aide d'un script
python

En Perl je fais ça
print <<EOF;
documentclass[12pt,a4paper]{article}

usepackage[french]{babel} % specification francaise
usepackage[latin1]{inputenc} % entree clavier latin1
usepackage[T1]{fontenc} % sortie

end{document}
EOF

Mais je ne sais pas comment faire un "print" de plusieurs lignes en
Python

Bon au pire je peux toujours faire ça ligne par ligne... mais ça
m'arrangerais qu'il existe
une autre solution

Merci d'avance



print r"""
documentclass[12pt,a4paper]{article}

usepackage[french]{babel} % specification francaise
usepackage[latin1]{inputenc} % entree clavier latin1
usepackage[T1]{fontenc} % sortie

end{document}
"""

Utilisation des triple-quotes pour avoir une chaîne sur plusieurs lignes.
Utilisation du r avant la chaîne pour éviter l'interprétation du
caractère d'échappement.

Après, si tu veux paramétrer certaines choses, tu peux bien sûr découper
tes écritures en plusieurs étapes, en coller dans des 'if'... mais tu
peux aussi utiliser le formatage des chaînes:


params = { 'langue': 'french', 'encodage':'latin1' }

print r"""
documentclass[12pt,a4paper]{article}

usepackage[%(langue)s]{babel} % specification francaise
usepackage[%(encodage)s]{inputenc} % entree clavier latin1
usepackage[T1]{fontenc} % sortie

end{document}
"""%params


A+


--
Laurent POINTAL -

Avatar
noone
Désolé ça marche nickel...

FILE = open('main.tex', 'w')



# En tete du fichier .tex
FILE.write(r"""

documentclass[12pt,a4paper]{article}
usepackage[french]{babel} % specification francaise
usepackage[latin1]{inputenc} % entree clavier latin1
usepackage[T1]{fontenc} % sortie

usepackage{lscape}
title{Trombinoscope}
author{null}
date{today}
%date{null}
begin{document}
begin{landscape}
maketitle
section*{Introduction}
Paysage
end{landscape}
""")

Merci encore !