2017-06-24 12 views
0

word/letterをpython 2.7を使用してcolor \ colorを変更してテキストにハイライトする方法は?pythonで単語をハイライトする2.7

try: clintを使用してください。

>>> from clint.textui import puts, colored 
>>> puts(colored.red('Text in Red')) 

レッド 内のテキストが、私は、例えば「テキスト」でのみ「X」を色付けしたいです。

答えて

0
import termcolor 

string = 'Text in Red' 

string = string.replace('x', termcolor.colored('x', 'red')) 

print string 
+1

回答が書式設定ツールを使用して適切に書式設定されていることを確認してください。また、実際にコードが読者の理解を助けるために実際に行っていることを実際に説明するのが最善です。 – idjaw

0

次のように動作します。

>>> from clint.textui import puts, colored 
>>> puts('Te'+colored.red('x')+'t in Red') 

これが最初の色がコンソールに表示されている方法を説明することで動作し、なぜ私に説明してみましょう。

色を変えるようにコンソールに指示するときは、特別なシステムコールなどをする必要があると思うでしょうが、ansiエスケープシーケンスと呼ばれる特殊文字を出力するだけです。クリントがあなたのためにこれを扱います。 clint.ansi.red関数を使用すると、xの前に赤のエスケープ文字が追加され、xの後ろにnormalに戻るすべてのエスケープ文字が追加されました。

これは、'Te'+colored.red('x')+'t in Red''Te\x1b[31m\x1b[22mx\x1b[39m\x1b[22mt in Red'と同じことを意味し、他の色のテキストを自分のハートのコンテンツに追加し続けることができます。


また、クリントはこれを処理していますが、カラーエスケープシーケンスの完全なリストを表示したい場合は、単に情報提供の目的のために、彼らはhereを見つけることができます。カーソルの位置を変更するなどの操作を行うための他のANSIコードがあります。あなたはansiコードhereのすべてのリストを見つけることができます。 clintライブラリの外でansiコードを混乱させる場合は、予期しない例外を含むコントロールの流れを考慮に入れて、テキストを通常の状態に戻す必要があることを確認してください。プログラムを実行してコンソールを赤くしてプログラムを終了させるエラーが発生するのは楽しいことではありませんが、まだ赤いコンソールが残っています。

関連する問題