Formatting Strings Using .format()
Python stringlari uzoq vaqt davomida `.format()` metodini qo‘llab kelgan.
.format()
yordamida stringlarni formatlash
Python stringlari uzoq vaqt davomida .format()
metodini qo‘llab kelgan. Ushbu dokumentatsiyada asosan f-string
lardan foydalaniladi, lekin .format()
hamon juda mashhur ekanligini bilib olasiz.
Formatlash qanday ishlashini to‘liq tushunish uchun quyidagi manzilga qarang: Python hujjatlari
Keling, bir nechta qisqa misollar orqali .format()
qanday ishlashini ko‘rib chiqamiz:
Bu misolda pozitsion argumentlar ishlatiladi. Python ikki marta {}
topadi va mos ravishda o‘zgaruvchilarni joylashtiradi. Agar yetarli argument kiritilmasa, quyidagi kabi xatolik yuzaga keladi:
Bu xato .format()
chaqirig‘ida yetarli elementlar yo‘qligini bildiradi.
Shuningdek, oldingi qismdagi kabi nomlangan argumentlardan foydalanishingiz mumkin:
Lug‘atni .format()
ga uzatish o‘rniga parametrlarni nomi bilan yuborishingiz mumkin. Aslida, agar lug‘atni uzatishga harakat qilsangiz, xatoga duch kelasiz:
Buning uchun quyidagi yechim mavjud:
Bu biroz g‘alati ko‘rinadi, lekin Python'da ikki yulduzcha (**)
shuni anglatadiki, siz funksiya nomlariga parametrlarni uzatayapsiz. Shunday qilib, Python lug‘atni first_name=name, age=age
ga aylantiradi.
Siz .format()
dan foydalanganda bir o‘zgaruvchini bir necha marta ishlatishingiz ham mumkin:
Bu yerda siz string ichida ikki marta {first_name}
ga murojaat qilyapsiz va Python har ikkisini ham first_name
o‘zgaruvchisi bilan almashtiradi.
Istasangiz, qiymatlarni raqamlar yordamida interpolatsiya qilishingiz ham mumkin:
Chunki Python'da ko‘pchilik narsalar 0 dan boshlanadi, bu misolda siz age
ni {1}
ga va name
ni {0}
ga joylashtirdingiz.
.format()
bilan ishlashda keng tarqalgan kodlash uslubi bu formatlangan stringni yaratib, uni keyinchalik ishlatish uchun o‘zgaruvchiga saqlashdir:
Bu usul yordamida siz greetings
ni qayta ishlatishingiz va keyinchalik dasturingizda first_name
va age
uchun yangilangan qiymatlarni kiritishingiz mumkin.
Shuningdek, string kengligini va tekislashni aniqlashingiz ham mumkin:
Chapga tekislash sukut bo‘yicha (default) holatdir. Nuqta-vergul (:) Python'ga biror formatlashni qo‘llashingizni bildiradi. Birinchi misolda string chapga tekislangan va 20 ta belgidan iborat bo‘lishini aniqladingiz. Ikkinchi misolda ham 20 ta belgi bor, lekin u o‘ngga tekislangan. Oxirida esa ^
belgi stringni 20 ta belgi ichida markazlashtirishni bildiradi.
Oldingi misollardagidek o‘zgaruvchini uzatmoqchi bo‘lsangiz, quyidagicha bajarishingiz mumkin:
E'tibor bering, o‘zgaruvchi nomi :
belgisidan oldin {}
ichida kelishi kerak.
Hozirgi vaqtda siz .format()
qanday ishlashini yaxshi tushungan bo‘lishingiz kerak.
Keling, f-string'ga o‘taylik!