2013-02-08 11 views
29

私は、左と右の両方向(別々のケース)で、特定の長さまで空白で文字列をパディングする必要がある2つのシナリオを持っています。例えば、私は、文字列があります。Python - 文字列に左右のスペースを埋め込むにはどうすればいいですか?

TEST 

を、私は文字列変数を作成する必要があり

_____TEST1 

ので、実際の文字列変数があると、長さが10個の文字(この場合は5つのスペースが率います) 。 注::空白を表すためにアンダースコアを表示しています(そうでない場合はマークダウンが正しく表示されません)。

私はまた、他の方向から、パッドの空白を逆にする方法を把握する必要があります。

TEST2_____ 

はこれを行うには、任意の文字列ヘルパー機能はありますか?または、それを管理する文字配列を作成する必要がありますか?

また、文字列の長さを可変にしたいということに注意してください(上記の例では長さ10を使用しましたが、これを変更できる必要があります)。

すべてのヘルプは素晴らしいだろう。これを管理する機能がpythonの場合は、何かを根本から書き直す必要はありません。

ありがとうございます!

+0

可能重複[?スペースをPythonの文字列を記入](http://stackoverflow.com/questions/5676646/fill-out-:

代替はformatメソッドを使用することが考えられますa-python-string-with-spaces) –

答えて

83

str.ljust and str.rjustをご覧になれます。

>>> '{:<30}'.format('left aligned') 
'left aligned     ' 
>>> '{:>30}'.format('right aligned') 
'     right aligned' 
>>> '{:^30}'.format('centered') 
'   centered   ' 
>>> '{:*^30}'.format('centered') # use '*' as a fill char 
'***********centered***********' 
+2

@Brett - これは廃止されたようです。私は別の方法で更新しました;-) – mgilson

+5

['str.ljust'](https://docs.python.org/2/library/stdtypes.html#str.ljust)と' rjust'メソッドは非推奨です。 'string'モジュールの古代関数にリンクしました。これは、組み込み型がクラスに似ておらず、特殊なケースとしてしかメソッドを持っていない2.3日前に必要だったものです。 – abarnert

関連する問題