Python String format() ÖRNEKLERLE açıklayın

⚡ Akıllı Özet

Python `String format()` yöntemi, şablon dizesi içindeki süslü parantez yer tutucularını sağlanan değerlerle değiştiren yerleşik bir yöntemdir. Yer tutucular boş parantezler, konum indeksleri veya anahtar kelime adlarını kabul eder ve son çıktı için sayı, hizalama ve dolgu biçim belirleyicilerini destekler.

  • 🔤 Yer tutucular: Süslü parantezler {} değerlerin nereye yerleştirileceğini gösterir — boş, numaralı {0} veya isimli {name}.
  • 🔢 Konumsal ve anahtar kelime: format() fonksiyonu boş parantezleri sırayla, dizin konumuna göre veya eşleşen anahtar kelime adlarına göre doldurur.
  • 🎛️ Biçim belirteçleri: İki nokta üst üste işareti, ondalık, ikili, sabit noktalı ve onaltılık çıktı için {:d}, {:b}, {:.2f} ve {:x} gibi kodlar ekler.
  • ↔️ Hizalama ve dolgu: Genişlik belirten sayıları {:^10} veya {:,} ile ortalayarak metni genişletin, boşluk ekleyin ve binlik ayırıcılar ekleyin.
  • 🧱 Nesneler ve sözlükler: Yer tutucular, sınıf özniteliklerini {c.attr} ve sözlük değerlerini {m[key]} ile okur.
  • 🤖 Yapay zeka yardımı: Yapay zekâ kodlama asistanları, düz dil komutlarından format() çağrıları ve f-string karşılıklarını üretir.

Python Dize biçimi()

Nedir? Python Dize biçimi()?

Python Dize biçimi() dizeyi, son dizede geçerli değerlere sahip yer tutucularla değiştirmek, değiştirmek veya dönüştürmek için kullanılan bir işlevdir. Bu, yerleşik bir işlevdir. Python Biçimlendirilmiş dizgeyi çıktı olarak döndüren dize sınıfı. Dizenin içindeki yer tutucular süslü parantez içinde tanımlanır.

Örneğin, “Hoş geldiniz” Guru99 {}”.format('değer buraya').

format() fonksiyonunun sözdizimi Python

templatestring.format(val1, val2...)

Parametreler

val1, val2 … : Kıvırcık parantez {} biçiminde yer tutucuları olan verilen şablon dizesinde değiştirilmesi gereken değerler. Yer tutucular bir dize, anahtar/değer çifti, tamsayılar, kayan nokta sayıları, karakterler vb. olabilir.

Geri dönüş değeri

Kıvrımlı parantez içinde verilen yer tutucuların yerine geçerli değerler konularak son dize döndürülür.

Yer tutucular

Şablon dizesindeki yer tutucular, örneğin {} gibi süslü parantezlerle gösterilir. Yer tutucu boş {} olabilir veya örneğin {name} için bir değişkene sahip olabilir veya örneğin {0}, {1} vb. gibi bir sayı dizinine sahip olabilir.

String format() nasıl çalışır?

MKS Python Dize biçimi() yöntem yer tutucular için orijinal dizeleri tarayacaktır. Yer tutucular boş kıvırcık parantezler ({}), konumsal argümanlar olabilir, yani dize örneğin {0}, {1} vb. için 0, 1 indeksli yer tutuculara sahip olabilir.

Anahtar sözcük argümanları için değişken adı, örneğin {name}, {age} için süslü parantezlerin içinde mevcut olacaktır. Boş süslü parantezlerin durumunda, biçimdeki değerler, süslü parantezlerin içinde sırayla değiştirilecektir.

İlk değer, ilk boş süslü parantezle ve ardından bir sonrakiyle değiştirilecektir. Konumsal bağımsız değişkenler için dizin 0'dan başlayacak ve bu şekilde devam edecektir. Değerler virgülle ayrılmış biçimde ve 0 ile mevcut olacaktır.th value formatın içindeki ilk değere işaret edecektir ve bu şekilde devam edecektir.

Anahtar Kelime bağımsız değişkenleri için, yani yer tutucularınızın içinde bir değişken kullandığınızda, format içindeki değerlerin sırasını istediğiniz gibi alabilirsiniz.

Değerler format()'ta mevcut olan değişken adına göre değiştirileceği için burada sıra önemli değildir. Burada bir dize içindeki yer tutucuların boş, konumsal olarak ve anahtar sözcükler veya değişkenler kullanılarak nasıl kullanılacağına ilişkin birkaç örnek verilmiştir.

Örnek: Boş Yer Tutucunun bir dize değeriyle değiştirilmesi

Aşağıdaki örnekte, dizenin boş kıvırcık parantezleri({}) vardır. Biçime verilen değer kıvırcık parantezlerin({}) içinde değiştirilecektir.

Değiştirmek istediğimiz değer bir dizedir.

Örnek:

Dize Biçimlendirmesini Kullanma PythonSüslü parantezlerin ({}) bir dize değeriyle değiştirilmesini istiyoruz. Değer, format(" ") ifadesine veriliyor.Guru99”). Çalıştırıldığında, süslü parantezler {} aşağıdakiyle değiştirilir: Guru99 ve son dizeyi "Hoş geldiniz" olarak alacaksınız. Guru99 eğitim videosu.

print ("Welcome to {} tutorials".format("Guru99"))

Çıktı:

Welcome to Guru99 tutorials

Örnek: Boş Yer Tutucunun sayısal bir değerle değiştirilmesi

Aşağıdaki örnekte, sayısal değerin orijinal dizenin içinde değiştirilmesini istiyoruz. Kıvırcık parantezler({}), sayısal değere ihtiyaç duyduğunuz yere eklenir. Çalıştırıldığında, boş kıvırcık parantezler ({}), sayısal değerle değiştirilir.

Örnek:

Dizenizin içine sayılar eklemek için format() işlevini de kullanabilirsiniz. Örnek, boş Yer Tutucunun {}, format() içindeki 99 sayısıyla nasıl değiştirileceğini gösterecektir.

print ("Welcome to Guru{} Tutorials".format("99"))

Çıktı:

Welcome to Guru99 Tutorials

Örnek: Yer Tutucunun içinde değişken veya anahtar kelime bağımsız değişkenlerini kullanma

Aşağıdaki örnekte gösterildiği gibi, kıvırcık parantezlerin içindeki değişkenleri kullanmak da mümkündür. Değişkenler format() içinde tanımlanır. Bu nedenle, yürütüldüğünde, değişkene atanan değer orijinal dizenin içinde değiştirilir.

Örnek:

Süslü parantezler içinde değişkenler kullanabilirsiniz, örneğin {name} {num}. name ve num değişkenlerinin değerleri format içinde kullanılabilir, yani format(name="Guru{name} ve {num} değişkenlerine verilen değerler, {name} ve {num} değişkenlerinin içine yerleştirilecektir.

print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))

Çıktı:

Welcome to Guru99 Tutorials

Örnek: Yer Tutucunun içinde dizin veya konumsal bağımsız değişkenleri kullanma

Değerler yer tutucuların içindeki 0, 1, 2 gibi indeksler kullanılarak değiştirilebilir. Değer, aşağıdaki örnekte gösterildiği gibi format()'tan sırayla seçilecektir.

Örnek:

print ("Welcome to {0}{1} Tutorials".format("Guru","99"))

Çıktı:

Welcome to Guru99 Tutorials

Örnek: Bir dize içinde birden çok yer tutucu kullanma

Bu örnekte birden fazla boş yer tutucu kullanacağız.

Örnek:

Örnekte kullanılan dize birden fazla boş yer tutucuya sahiptir ve her yer tutucu format() içindeki bir değere atıfta bulunacaktır. İlk değer, ilk yer tutucuyla değiştirilecektir ve bu şekilde devam edecektir.

print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))

Çıktı:

Guru99 is totally new kind of learning experience!

Yer Tutucuların İçinde Biçimlendirme

Bir değişken veya indeks ile Placeholder'ın boş olmasının mümkün olduğunu gördünüz. Başvuruda bulunmanız da mümkündür Python Yer Tutucunun İçinde Dize Biçimlendirmesi.

İşte formatların listesi

Format Açıklama Örnek E-posta
:d Yer tutucunun içinde kullanıldığında çıktıyı ondalık formatta verecektir. print("The binary to decimal value is : {:d}".format(0b0011))

Çıktı:

The binary to decimal value is  : 3
:b Yer tutucunun içinde kullanıldığında çıktıyı ikili formatta verecektir. print("The binary value is : {:b}".format(500))

Çıktı:

The binary value is : 111110100
:e Yer tutucunun içinde kullanıldığında çıktıyı bilimsel formatta verecektir, çıktıdaki e üssü küçük harf olacaktır. print("The scientific value is : {:e}".format(40))

Çıktı:

The scientific format value is : 4.000000e+01
:E Yer tutucu içinde kullanıldığında çıktıyı bilimsel formatta verecektir, çıktıdaki E üssü büyük harf olacaktır. print("The scientific value is : {:E}".format(40))

Çıktı:

The scientific value is : 4.000000E+01
:f Bu, sabit noktalı bir sayı biçiminin çıktısını verecektir. Varsayılan olarak, altı ondalık basamağa sahip herhangi bir sayının çıktısını alırsınız. En fazla 2 ondalık basamağa ihtiyacınız varsa, bunu olarak kullanın. 2f yani. 2f'nin önünde bir nokta (.) print("The value is : {:f}".format(40))

Çıktı:

The value is  : 40.000000

Örnek: Çıktıyı 2 ondalık basamağa kadar gösterme.

print("The value is : {:.2f}".format(40))

Çıktı:

The value is: 40.00
:o Bu, sekizlik formatın çıktısını alacaktır print("The value is : {:o}".format(500))

Çıktı:

The value is  : 764
:x Bu, hex biçiminin küçük harfle çıktısını verecektir print("The value is : {:x}".format(500))

Çıktı:

The value is  : 1f4
:X Bu, hex formatının büyük harfle çıkmasını sağlayacaktır. print("The value is : {:X}".format(500))

Çıktı:

The value is  : 1F4
:n Bu, sayı biçiminin çıktısını verecektir. print("The value is : {:n}".format(500.00))

Çıktı:

The value is  : 500
:% Bu, çıktıyı yüzde biçiminde verecektir.
Varsayılan olarak yüzde çıktısı için 6 ondalık basamak verir, herhangi bir ondalık değer istemiyorsanız 0 ile nokta kullanabilirsiniz (:.0%).
print("The value is : {:%}".format(0.80))

Çıktı:

The value is  : 80.000000%

Bu örnek, yer tutucunun içinde {:.0%} kullanılarak ondalık basamakların nasıl atlanacağını gösterir.

print("The value is : {:.0%}".format(0.80))
Çıktı:

The value is: 80%
:_ Bu, binlik ayırıcı olarak bir alt çizgi çıktısı verecektir. Python 3.6+'dan edinilebilir. print("The value is {:_}".format(1000000))

Çıktı:

The value is  : 1_000_000
:, Bu, virgülün binlik ayırıcı olarak çıktısını verecektir print("The value is : {:,}".format(1000000))

Çıktı:

The value is  : 1,000,000

Çıktıda gösterildiği gibi virgül (,) binlik ayırıcı olarak eklenir.

: Bu, herhangi bir pozitif sayının önüne bir boşluk ekleyecektir Bu örnek, verilen sayıdan önce nasıl boşluk veya dolgu ekleneceğini gösterir. 5 sayısı, sayıdan önce olmasını istediğiniz alan sayısını belirtir.

print("The value is: {:5}".format(40))

Çıktı:

The value is:    40
:- Bu, negatif sayıların önüne bir eksi işareti ekleyecektir Örnek, {:-} kullanarak sayıdan önce eksi (-) işareti bulunan çıktının nasıl alınacağını gösterir.

print("The value is: {:-}".format(-40))

Çıktı:

The value is: -40
:+ Sayının pozitif olduğunu belirtmek için artı işaretini kullanabilirsiniz Örnekte, {:+} kullanılarak sayıdan önce artı (+) işareti bulunan çıktının nasıl alınacağı gösterilmektedir.

print("The value is: {:+}".format(40))

Çıktı:

The value is: +40
:= Eşittir, +/- işaretini sol tarafa yerleştirmek için kullanılır. Örnek, {:=} kullanarak eşittir işaretinden önce artı (+/-) işaretli çıktının nasıl alınacağını gösterir.

print("The value is {:=}".format(-40))

Çıktı:

The value is -40
:^ Bu, nihai sonucu merkeze hizalayacaktır Örnekte metni ortalamak için {:^} kullanılması gösterilmektedir. Değer değiştirildiğinde ortaya hizalı göstermek için 10 boşluk eklemek için 10 sayısı kullanılır.

print("The value {:^10} is positive value".format(40))

Çıktı:

The value     40     is a positive value

Burada son metne 10 boşluk ekleyecek 10'u kullanabilirsiniz ve değiştirilecek değer 10 boşluğun ortasına hizalanacaktır. Değiştirilen değerin merkez hizalamasını göstermek için 10'luk boşluklar eklenir.

:> Bu, nihai sonucu sağa hizalayacaktır 10'luk boşluk (:>10) kullanılarak eklenir ve değiştirilen değer sağa hizalanır.

print("The value {:>10} is positive value".format(40))

Çıktı:

The value         40 is positive value
:< Bu, nihai sonucu sola hizalayacaktır 10'luk boşluk (:<10) kullanılarak eklenir ve değiştirilen değer sola hizalanır.

print("The value {:<10} is positive value".format(40))

Çıktı:

The value 40         is positive value

Sınıfı format() ile kullanma

Bu örnekte bir sınıf oluşturuyoruz ve sınıfın nesnesini .format içerisinde kullanıyoruz. Python Yöntem. Yer tutucular, sınıf nesnesini kullanan sınıf özelliklerine veya üyelere atıfta bulunacaktır.

Örnek:

Sınıf, format(c=MyClass()) içerisinde çağrılır. c nesnesi, MyClass() sınıfının içindeki özellik ve yöntemlere referansa sahip olacaktır.

class MyClass:
    msg1="Guru"
    msg2="Tutorials"   

print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))

Çıktı:

Welcome to Guru99 Tutorials!

Format() ile sözlüğün kullanılması

Aşağıdaki örnekte gösterildiği gibi format() içindeki sözlükten de faydalanmak mümkündür:

my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'}
print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))

Çıktı:

Welcome to Guru99 Tutorials!

Değişken Değiştirmeleri Dolgulama

string.format() yöntemini kullanarak dizenizin içindeki yer tutucuları kullanarak dolgu, boşluk ekleyebilirsiniz.

Örnek:

Aşağıdaki örnekte format() kullanılarak Yer Tutucunun içine boşluk eklenecektir. Boşluk eklemek için, iki noktadan sonra (:) kıvırcık parantezlerin içindeki boşluk sayısını belirtmeniz gerekir. Bu nedenle Yer Tutucu {:5} gibi görünecektir.

print("I have {:5} dogs and {:5} cat".format(2,1))

Çıktı:

I have     2 dogs and     1 cat

Dizini yer tutucunun içinde de verebilirsiniz, örneğin: {0:5}; burada 0, format içindeki ilk değeri ifade eder.

print("I have {0:5} dogs and {1:5} cat".format(2,1))

Çıktı:

I have     2 dogs and     1 cat

SSS

f-string'ler eklendi Python 3.6 sürümünde ifadeler doğrudan yerleştirilir ve genellikle daha hızlı çalışır. format() yöntemi eski sürümlerde de çalışmaya devam eder. Python Şablonun bir değişkenden, dosyadan veya kullanıcı girdisinden geldiği durumlar ve sürümler.

% operatörü, %s ve %d gibi printf tarzı semboller kullanırken, format() ise adları, indeksleri ve daha zengin belirleyicileri destekleyen süslü parantez yer tutucuları kullanır. Yeniden sıralama ve yerleşim konusunda daha temiz bir yaklaşım sergilediği için format(), modern kodda % operatörünün yerini almıştır.

Double Onlardan kurtulmak için diş telleri. Typing İki açılış parantezi bir gerçek parantez, iki kapanış parantezi ise bir kapanış parantezi yazdırır; bu nedenle gerçek bir yer tutucu, aynı şablon dizesi içinde gerçek parantezlerle birlikte çalışmaya devam eder.

Eksik konum değeri IndexError hatasına, eksik anahtar kelime veya sözlük adı ise KeyError hatasına neden olur. Yer tutuculardan daha fazla değer geçirilmesine izin verilir ve fazlalıklar göz ardı edilir; bu nedenle yalnızca eksik referanslar hataya neden olur, fazla referanslar değil.

format() metodu şu şekilde çalışır: Python 2.6 ve her Python 3. sürüm. Otomatik alan numaralandırması, parantezlerin {0} {1} yerine boş kalmasını gerektirir. Python 2.7 veya 3.1 ve sonrası.

Hayır. Python Dizeler değiştirilemez olduğundan, format() yöntemi şablonu değiştirmeden yepyeni bir dize oluşturur ve döndürür. Biçimlendirilmiş metni daha sonra kullanmak üzere saklamak için sonucu bir değişkene atayın, örneğin message = template.format(value).

Makine öğrenimi kodu, okunabilir günlükler oluşturmak, dil modelleri için komut istemi şablonları oluşturmak ve doğruluk gibi ölçütleri sabit ondalık basamaklarla yazdırmak için format() işlevini kullanır. Temiz ve biçimlendirilmiş çıktı, deneylerin ve model raporlarının karşılaştırılmasını kolaylaştırır.

Evet. GitHub Copilot, istediğiniz çıktıyı açıklayan kısa bir yorumdan format() çağrılarını ve bunların belirleyicilerini otomatik olarak tamamlar. Agentic AI asistanları daha da ileri giderek format() çağrılarını f-dizelerine dönüştürür, hizalamayı düzeltir ve testlerinizi otomatik olarak çalıştırır.

Bu yazıyı şu şekilde özetleyin: