IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Mode console, couleur dans le shell


Sujet :

Python

  1. #1
    Membre régulier Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Points : 116
    Points
    116
    Par défaut Mode console, couleur dans le shell
    Apres Ghost in the shell,
    Color in the shell
    huhu </blague en carton>

    Plus serieusement, est ce que quelqu'un sait si c'est possible d'afficher du texte en couleur sur la sortie standard (la console).
    J'ai deja fait quelque recherche du cote de print de de sys.stdout, mais sans succes...
    (si c'est possible de le faire en utilisant un module qui n'est pas inclut dans python a la base, ca me va aussi).

    Merci de bien vouloir m'eclairer.
    ''' Life is short, use Python '''
    Business En Ligne
    SearchEngineFight

  2. #2
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 181
    Points : 199
    Points
    199
    Par défaut
    Salut,

    Oui c'est possible, mais tu cherches au mauvais endroit.
    Cela ne dépend pas de Python, mais de l'environnement dans lequel il est exécuté.
    Si ton terminal est compatible avec les codes d'échappement ANSI, c'est à dire un peu près n'importe quoi excepté la console ms-dos de windows, tu peux utiliser ces séquences pour mettre de la couleur en mode texte.

    J'ai trouvé un dictionnaire des correspondances sur la mailing list Python, à partir de là il suffit d'écrire une petite fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
     
    import sys
     
    colours = {
    	"default"    :    "\033[0m",
    	# style
    	"bold"       :    "\033[1m",
    	"underline"  :    "\033[4m",
    	"blink"      :    "\033[5m",
    	"reverse"    :    "\033[7m",
    	"concealed"  :    "\033[8m",
    	# couleur texte
    	"black"      :    "\033[30m", 
    	"red"        :    "\033[31m",
    	"green"      :    "\033[32m",
    	"yellow"     :    "\033[33m",
    	"blue"       :    "\033[34m",
    	"magenta"    :    "\033[35m",
    	"cyan"       :    "\033[36m",
    	"white"      :    "\033[37m",
    	# couleur fond
    	"on_black"   :    "\033[40m", 
    	"on_red"     :    "\033[41m",
    	"on_green"   :    "\033[42m",
    	"on_yellow"  :    "\033[43m",
    	"on_blue"    :    "\033[44m",
    	"on_magenta" :    "\033[45m",
    	"on_cyan"    :    "\033[46m",
    	"on_white"   :    "\033[47m" }
     
    def couleur(nom):
    	# on évite print à cause du '\n' inséré automatiquement
    	sys.stdout.write(colours[nom])
    Exemple d'utilisation : couleur("green")

    De plus, il est également possible de combiner plusieurs séquences en une seule instruction :
    permettra d'écrire directement en jaune sur fond noir.
    <3 Debian
    [ C | C++ | PHP | Python ]

  3. #3
    Membre régulier Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Points : 116
    Points
    116
    Par défaut
    Okay.
    Merci beaucoup
    ''' Life is short, use Python '''
    Business En Ligne
    SearchEngineFight

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. couleur dans un shell
    Par Adren dans le forum C
    Réponses: 2
    Dernier message: 05/11/2006, 00h18
  2. écrire en couleur dans la console
    Par al85 dans le forum C
    Réponses: 11
    Dernier message: 29/04/2006, 09h50
  3. Fenetre mode console dans une win32
    Par had182 dans le forum Windows
    Réponses: 3
    Dernier message: 28/12/2005, 19h21
  4. Couleur dans la console
    Par Tarrke dans le forum C++
    Réponses: 2
    Dernier message: 27/07/2005, 15h27
  5. Des couleurs en mode console
    Par davcha dans le forum MFC
    Réponses: 3
    Dernier message: 08/05/2004, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo