2013/06/21

[python] 出力メッセージをいい感じにする

今回はすさまじく地味な記事です

ツールをコンソールで実行したときに出すログメッセージなんですが
これが以外といい感じに出ないんです

こんな感じに変に改行されちゃってたり…

逆になんか足りないし、よく見ると Log Message2! が微妙にセンタリングできていません


ということで、このログメッセージをまともにする方法です



コンソールの横幅を知る



先に答えを言ってしまうと、この黒画面の横の文字数は80文字です

では以下のように横に80文字並べてみましょう
print '=' * 80
print '=' * 80
print '=' * 80

…なんか、ちょっと予想と違うような…



どうやら80文字ぴったりだと改行が起きてしまっているようです


なので、横いっぱいに何か書く場合には79文字を限界としてあげれば良いようです
print '=' * 79
print '=' * 79
print '=' * 79

きれいにラインが引けました!





タイトルをセンタリングする



ではお次はタイトルをきっちりセンタリングする方法です

以下のように書きます
print '=' * 79
print 'Log Message!'.center(79, ' ')
print '=' * 79

print '\n'

print ' Log Message! '.center(79, '=')

string モジュールの center というコマンドを使うと
文字列を真ん中に置いて、余った空間を指定した文字で埋めてくれます
何も考えなくてもいいので楽チンですね




そのほかいろいろ



center 以外にも右寄せ、左寄せのコマンド ljust, rjust を使うと
ここから~ここまで のような表現も可能です
print 'Start >> '.ljust(79, '=')
print '\n'
print '\tABC'
print '\tXYZ'
print '\n'
print '>> End'.rjust(79, '=')

中に Tab を入れて見やすくしたりもしてみました




…と、いうことで見た目も美しい print 出力とは? でした

0 件のコメント:

コメントを投稿