f-Strings tersedia dari Python 3.6 dan sangat berguna untuk memformat string:
>>> n='you'
>>> f'hello {n}, how are you?'
'hello you, how are you?'
Membaca lebih banyak tentang mereka di Python 3 ini f-String: Sebuah Peningkatan String Format Sintaks (Guide) . Saya menemukan pola yang menarik:
Perhatikan bahwa menggunakan tiga kawat gigi akan menghasilkan hanya ada satu kawat gigi dalam string Anda:
>>> f"{{{74}}}" '{74}'
Namun, Anda bisa mendapatkan lebih banyak kawat gigi untuk ditampilkan jika Anda menggunakan lebih dari tiga kawat gigi:
>>> f"{{{{74}}}}" '{{74}}'
Dan inilah tepatnya masalahnya:
>>> f'{74}'
'74'
>>> f'{{74}}'
'{74}'
Sekarang jika kita beralih dari dua {
menjadi tiga, hasilnya sama:
>>> f'{{{74}}}'
'{74}' # same as f'{{74}}' !
Jadi kita membutuhkan hingga 4! ( {{{{
) untuk mendapatkan dua kawat gigi sebagai output:
>>> f'{{{{74}}}}'
'{{74}}'
Kenapa ini? Apa yang terjadi dengan dua kawat gigi agar Python memerlukan satu lagi sejak saat itu?
f'{2+2}'
mengembalikan 4, f'{{2+2}}'
mengembalikan 2 + 2, f'{{{2+2}}}'
➝ {4}, f'{{{{2+2}}}}'
➝ {{2 + 2}} dan seterusnya. Masuk akal tetapi sedikit membingungkan pada pandangan pertama.
f'{74}'
sama dengan f'74'
.
str.format
juga bagus.
"{74}".format(...)
akan membutuhkan urutan dengan setidaknya 74 elemen.
f"{{2+2}}"
danf"{{{2+2}}}"
, yang mana'{2+2}'
dan'{4}'
masing