Öncelikle herkese iyi forumlar.
Merak ettiğim Python’da print(f"") ve print(b"") kodlarındaki f ve b’nin ne işe yaradığı.
Birisi beni aydınlatabilirmi bunlar ne işe yarıyor ve tam isimleri ne ?
F için tanımlamalı örnek;
isim = "wormer"
print(f"benim adım {isim}")
formatlama fonksiyonun değişik daha kısa bir hali gibi düşün. aynı mantık farklı yapıyla çalışıyor.
b için net ifadelerde bulunamam ama anladığım kadarıya (internetten) b = byte anlamına geliyor.
print(f""):
https://python-istihza.yazbel.com/fstring.html
print(b""):
Merhaba.
f"" ifadeleri f-string olarak geçiyor. Burada anlatılmış.
b"" ifadeleri ise bytes türünde nesneleri ifade ediyor, bu şekilde tanımlanan karakter dizileri sadece ASCII karakterleri içerebilir. Mesela Türkçe karakterler içeremez:
>>> b"ı"
SyntaxError: bytes can only contain ASCII literal characters.
Ayrıca bu iki özelliğin print fonksiyonu ile alakası yok.
f-string’ler str.format’a bir alternatif:
>>> kelime = "Dünya"
>>> "Merhaba {kelime}!".format(kelime = kelime)
'Merhaba Dünya!'
>>> f"Merhaba {kelime}!"
'Merhaba Dünya!'
Ayrıca f-string içine eval fonksiyonu için uygun bir argüman olan her ifadeyi kod olarak yazabiliriz:
>>> f"Merhaba {kelime.swapcase()}!"
'Merhaba dÜNYA!'
bytes türü ise internet üzerinden veri aktarılırken ve içeriği byte türünde olan dosyalar üzerinde işlem yaparken kullanılıyor.