PythonPythonでスクリプトを書いて標準出力を大量に出すと、やはり単色では見づらいものですね。そこで最低限の色が付けられないものかと考えました。はじめにやはり同じようなことを考えた先人はたくさんいるようで、Pythonでもコンソールの文字色や背景色を変えるモジュールがありますね。検索してすぐヒットするのはChalk(pychalk)やcoloramaですが、サードパーティ製なので別途導入する必要があります。多機能は必要ない、環境はできるだけ変更したくない、コピペするだけで使えるのが良い。いうことで、素人ながらできるだけ取り回しがしやすいように、いくつか候補を考えてみました。ひとつはUnixコンソールエミュレータを使うやり方。Windows)でMS謹製の環境を構築するといった選択肢があります。この環境なら、文字列に特定のエスケープシーケンスを入れるだけで色が付きます。一方で、もちろんWindowsネイティブにはコンソールの文字色を制御するインタフェースがあるので、そちらで頑張るやり方もあります。共用の環境など、変更を加えるのが難しい場合に役立ちます。PythonからWindowsのAPIを呼ぶのは結構ハードル高めの印象。最近の.NETとかはそうでもないのかしら。サンプルは最後に記載します。Pro、Pythonは3.6と2.7でも確認しています。コンソールエミュレータ向け付けたい色に応じてエスケープシーケンスを挿入します。\033[に続けて色などの書式を指定します。標準の31m(黒)~37m(白)や、明るめの強調色91m(黒)~97m(白)のほか、太字、下線なども指定できます(対応状況は使用するコンソールエミュレータに依存)。終端は\033[0mで書式をリセットします。str型のデータにエスケープシーケンスを入れるだけでいいので、途中だけ色変更、みたいなことも簡単です。text"print("\033[32m{}\033[0m".format(buf_))print("\033[92m{}\033[0m".format(buf_))自分の環境(Cmder)で試したところでは、とりあえず色の変更はできましたが、他の書式設定はそもそも対応していないか、対応していても特に見た目違いがわからない程度でした。Cmderで試すとこんな感じになりました。Linuxでも同じやり方で書式を変更できます。MATEのターミナルでの例です。APIで作成してみました。ctypesモジュール経由で必要なAPIを呼び出せるようにしています。戻す、の順で繰り返します。printの終端文字の指定を駆使して、一行の途中のみオンラインに変更することもできますが、ちょっと面倒なので今回は実装していません。info_.wAttributes)Powershellで実行しても、コマンドプロンプト(cmd.exe)で実行しても、ちゃんと色が着けられますね。行の途中で色を変更する方は有効になりません。今回は使っていませんが、サードパーティ製のモジュールを使えば.NETを経由しても同じことができます。pythonnetC#のコードと同じ要領でConsoleを使って標準出力に文字列を書き込みます。サンプル今回のスクリプトを記載しておきます。APIを使って文字色を変更します。color_)モジュールをインポートして使うにはこんな感じ。環境は一応自動的に判別するので特に意識する必要はない、ハズ。usta関連記事Crowi/Growi編集用のツールを作成するCrowiを使っていると文書のバックアップが取りたくなることがあります。APIを作成するBottleはPythonの軽量Webフレームワーク。ServiceはAzureのPaaS環境。(関連設定の取得・設定変更)別記事の続きです。ここではポートフォワードの設定や仮想メディアの情報取得について書いておきます。完成形のサンプルは最後に掲載します。...記事を読むPythonを使ってWordPressに投稿するみんな大好きWordpressはCMS/ブログアプリケーションの有名な実装例、ですが、APIを使って管理できるとちょっとしたときに便利です。...記事を読むpysmbを使ってPythonでWindowsファイルサーバにアクセスするWindowsファイルサーバ(SMB)をスクリプトから操作するとき、ネイティブにはPowerShellですが、Pythonで実装するとLin...記事を読むWindowsが自動作成したファイルに連番を付ける特定のディレクトリ直下にあるファイルの名前を連番に変更したいとき、意外にうまくいかないケースがあります。具体的には、不定長さの文字列...記事を読むInfluxDBとGrafanaで作るサーバ監視環境Grafanaはデータの視覚化ツールとして人気ですね。今回はInfluxDBをデータソースとして性能監視環境を構築した際のメモです。~レボリューションズ~別記事の続きです。Storageは従量課金なので、できるだけ通信量や消費容量を削減したいですね。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。