f-StringはPython 3.6から利用でき、文字列のフォーマットに非常に役立ちます。
>>> n='you'
>>> f'hello {n}, how are you?'
'hello you, how are you?'
それらについてPython 3のf-Stringsでさらに読む:改良された文字列フォーマット構文(ガイド)。私は興味深いパターンを見つけました:
三重中括弧を使用すると、文字列に中括弧が1つだけ含まれることに注意してください。
>>> f"{{{74}}}" '{74}'
ただし、3つ以上のブレースを使用する場合は、より多くのブレースを表示できます。
>>> f"{{{{74}}}}" '{{74}}'
そして、これはまさにその通りです。
>>> f'{74}'
'74'
>>> f'{{74}}'
'{74}'
2 {
から3に渡しても、結果は同じです。
>>> f'{{{74}}}'
'{74}' # same as f'{{74}}' !
最大4つ必要です。({{{{
)2つの中括弧を出力として取得するには:
>>> f'{{{{74}}}}'
'{{74}}'
どうしてこれなの?Pythonがその瞬間から追加のブレースを必要とするために2つのブレースで何が起こりますか?
@ケビン素晴らしいもの。奇妙なこと
—
fedorqui 'SO stop harming'
f'{2+2}'
に、4をf'{{2+2}}'
返すと2 + 2 、returns f'{{{2+2}}}'
{4}、f'{{{{2+2}}}}'
➝{{2 + 2}}などを返します。それは理にかなっていますが、一見すると少し戸惑います。
簡単に言えば、はと
—
kaya3
f'{74}'
同じだからですf'74'
。
これはf-stringの新しいものではなく、古き良きもの
—
Peilonrayz
str.format
もこれを行います。
@Peilonrayzどうやって?
—
gerrit
"{74}".format(...)
少なくとも74要素のシーケンスが必要です。
f"{{2+2}}"
とf"{{{2+2}}}"
され、'{2+2}'
そして'{4}'
それぞれ