2017-05-11 3 views
1

の可変数のために印刷+フォーマットを一般:は、私は山車の3要素のタプルを持っている、と私は彼らがフォーマットされた印刷したい場合は、私が行うことができ、入力

print('{:.2f} {:.2f} {:.2f}'.format(*my_tuple)) 

そして私は、n-タプルを持っている場合それはすでに私がを書式設定を行うようにprint機能自体を変更する方法があるならば、私は、しかし、を思っていた

print(*map(lambda x: '{:.2f}'.format(x), my-tuple)) 

:山車、私はマップを使用することができますし、と同じ書式を達成します特別な介入なしに浮動小数点のために。私はドキュメントでそれについて何も見つけることができませんでした。

私はタプルでないすべての用語がフロートしている場合にも、うまくいくシンプル print(*my-tuple)を持っているしたいと思い

printを微調整する必要があるように思われるので、私はこの質問をしています。

+0

後には、入出力の例を提供することができますか? –

答えて

1

あなた自身で定義してみませんか?これと同じように:

def my_print(data): 
    print(', '.join('{:.2f}'.format(x) if type(x)==float else str(x) for x in data)) 

my_print((1.23, 51212., 5.151252, 1.25, 125.1545, .5314451, 5.1251, 5,.125 , 'sdgsdgdsg')) 
# prints: 
# 1.23, 51212.00, 5.15, 1.25, 125.15, 0.53, 5.13, 5, 0.12, sdgsdgdsg 

は、あなたが道にprint()作品を変更したり、再定義したいとは思わないでしょう、すべて、あなたがする必要はありません。..

+0

+1は、OP –

+0

に近いシンタックスのために 'print(*( '{{2f}')と書式(x)がタイプ(x)==浮動小数点strはい、これは行く方法のようです...しかし、私は毎回自分の 'my_print'を呼び出すことなく、私が印刷用に変更できる何らかのデフォルトを期待していました。また、今日私は ':.2f'、明日':.4f'を望むかもしれません。今日私は標準出力、明日のファイルなどに出力したいかもしれません。 – dangom

+0

あなたは浮動小数点表現の方法を設定することができる 'numpy'バックグラウンドなどを持っているでしょう。たとえば、np.set_printoptions(formatter = {'float': '{:.2f}'。format}) 'のようなことができます。すべての連続したプリントは、このルールに従ってフロートを行います。私はこれがどのように実装されているのかわかりません。 –

関連する問題

 関連する問題