string.format
変数の値に応じて、文字列を特定の長さにパディングしたいのですが、ミニ言語を使用してこれを行う標準的な Pythonic の方法があるかどうか疑問に思っています。現在、文字列連結を使用できます。
padded_length = 5
print(("\n{:-<" + str((padded_length)) + "}").format("abc"))
# Outputs "abc--"
padded_length = 10
print(("\n{:-<" + str((padded_length)) + "}").format("abc"))
#Outputs "abc-------"
私はこの方法を試しました:
print(("{:-<{{padded_length}}}".format(padded_length = 10)).format("abc"))
ただし、IndexError: tuple index out of range
例外が発生します。
Traceback (most recent call last):
File "<pyshell#41>", line 1, in <module>
print(("{:-<{{padded_length}}}".format(padded_length = 10)).format("abc"))
IndexError: tuple index out of range
文字列の連結とは別に、これを行うための標準的な組み込みの方法はありますか? 2 番目の方法は機能するはずなので、なぜ失敗するのかわかりません。