以下の構文の何が問題になっていますか?私は割り当てるx
に{diff} short of
あればdiff > 0
、それ以外の場合は、空の文字列でなければなりません。
diff = 1
x = f"{diff 'short of' if diff > 0 else ''}"
編集:コメントに基づいて、これを行う正しい方法は次のように思われます:
x = f"{diff} short of" if diff > 0 else ""
ただし、x
別の文字列補間も入力する必要があります。
y = f"That's {x} your best"
ここで問題となるのは、x
が空の場合、に余分なスペースがあることです。y
つまり、。"That's your best"
ではなくy =です"That's your best"
。文字列補間は自動的にスペースを追加しますか?
あなたの質問に:
文字列補間は自動的にスペースを追加しますか?
いいえ。最初のテンプレート文字列の最後に1つのスペースがないだけで、2番目のテンプレート文字列に1つのスペースが多すぎます。使用する:
x = f"{diff} short of " if diff > 0 else ""
そして:
y = f"That's {x}your best"
これで、後の末尾のスペースは、x
がx
空でない場合にのみ追加されます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加