Bonjour, voici une partie de code
Je voudrais savoir, si on peux mettre "mon texte" en (couleur) vert dans le fichier "monfichier.txt".Code:
1
2 with open("monfichier.txt", "a", encoding="utf8") as f: f.write("mon texte")
Merci d'avance.
Version imprimable
Bonjour, voici une partie de code
Je voudrais savoir, si on peux mettre "mon texte" en (couleur) vert dans le fichier "monfichier.txt".Code:
1
2 with open("monfichier.txt", "a", encoding="utf8") as f: f.write("mon texte")
Merci d'avance.
Bonjour,
on peut, mais c'est une très mauvaise idée, parce que les fichiers .txt sont des fichiers en texte brut (rien que du texte, aucun formatage, couleur, taille, graisse, soulignement...)
imagine un fichier HTML : on peut introduire un formatage pour avoir un texte en couleur, mais si le fichier n'est pas lu dans un navigateur, on verra les indications de formatage, mais pas l'effet du formatage.
Sur n'importe quel terminal ANSI, on pourra écrire (et voir):
Comme les instructions qui demandent l'affichage du texte avec cette couleur sont des caractères ASCII, on pourra les stocker dans un fichier texte utf-8.... et voir la couleur s'afficher en lisant le contenu du fichier avec more (par exemple).Code:
1
2>>> print("\033[32mHello\033[0m") Hello
Si on fait afficher le texte par un browser Web, il pourrait être codé en HTML de la façon suivante:
Donc on peut... pourvu qu'on sache l'engin qui devra interpréter et afficher ce coloriage et qu'on sache les instructions donner pour que...Code:<p>xxx<span style="color:green">Hello</span>xxx</p>
Dans cette histoire Python se contente d'écrire des chaines de caractères dans un fichier texte, mais pour ce qui est du contenu de cette chaine...
- W
Bonjour,
Comment comptes-tu lire ton fichier par la suite...
Est-ce avec un navigateur ? auquel cas tu peux peut-être envisager des balises html.
Est-ce avec des widgets tkinter ? ... et dans ce cas il existe la possibilité d'utiliser des tags.
Bonjour, j'ai trouvé une solution avec la librairie "docx", j'ai fait la fonction suivante :
MerciCode:
1
2
3
4
5
6
7
8
9
10
11
12
13 def Create_update_docx(self, file_path, contentred, contentnorm): if os.path.exists(file_path): doc = docx.Document(file_path) else: doc = docx.Document() doc.add_heading("Historique calculatrice", level=0) paragraph = doc.add_paragraph("") run = paragraph.add_run(contentred) paragraph.add_run(contentnorm) run.bold = True run.font.size = docx.shared.Pt(15) run.font.color.rgb = docx.shared.RGBColor(0xff, 0x00, 0x00) doc.save(file_path)
Bonjour
Je crois que tu n'as pas bien saisi la notion fondamentale de ce qu'est un "fichier texte" :roll:
De plus tes noms de paramètres laissent aussi à désirer. Si "contentred" est destiné, vu son nom, à représenter un contenu rouge alors il n'a pas besoin d'être paramètre de fonction (un paramètre est supposé pouvoir changer selon le besoin de l'appelant) ; et si le contenu est destiné à être de couleur variable (selon effectivement le besoin de l'appelant) alors il ne peut pas se nommer "rouge". Et idem pour "contentnorm" (contenu normal ?) qui dès lors, n'étant pas variable, n'a donc pas besoin d'être mis dans une "variable".