Python matnli ma'lumotlar (3-qism)
Matnli ma'lumotlarni formatlash
- "Python o'zgaruvchilari" bo'limida bilib olganimizdek, satrlar va raqamlarni quyidagicha birlashtira olmaymiz:
age = 23 txt = "Mening yoshim" + age print(txt) # Xatolik chiqaradi
—-— O'zingiz sinab ko'ring —-—
- Lekin biz
format()
metodi yordamida matnli/belgili ma'lumotlar va raqamlarni birlashtira olamiz!
format()
metodi bir nechta argumentlarni qabul qila oladi, ularni formatlashtiradi va ularni {}
to'ldiruvchisi bo'lgan satrga joylashtiradi, masalan:
age = 36 txt = "My name is John, and I am {}" print(txt.format(age))
—-— O'zingiz sinab ko'ring —-—
format()
metodi cheksiz argumentlarni qabul qila oladi va tegishli to'ldiruvchilarga joylashtiriladi:
ism = 'Sarvar' yosh = '25' manzil = 'Toshkent shahar' txt = "Mening ismim {}, yoshim {}da. Men {}da yashayman" print(txt.format(ism, yosh, manzil))
—-— O'zingiz sinab ko'ring —-—
- Argumentlar to'g'ri to'ldiruvchilarga qo'yilganligiga ishonch hosil qilish uchun
{0}
indeks raqamlaridan foydalanishingiz mumkin:
ism = 'Sarvar' yosh = '25' manzil = 'Toshkent shahar' txt = "Mening ismim {1}, yoshim {0}da. Men {2}da yashayman" print(txt.format(yosh, ism, manzil))
—-— O'zingiz sinab ko'ring —-—
Maxsus belgi
Matnli ma'lumotga ba'zi belgilarni kiritish muammolarni keltirib chiqaradi, bunday muammolarga duch kelmaslik uchun maxsus belgilardan (escape character) foydalaning.
Maxsus belgi - siz ishlatmoqchi belgidan oldin ishlatiladigan \
belgisi.
Masalan, matnli ma'lumot ichida qo'shtirnoq ishlatmoqchi bo'lsangiz, Python xatolik qaytaradi:
txt = "We are the so-called "Vikings" from the north." # Xatolik ko'rsatadi
—-— O'zingiz sinab ko'ring —-—
Yuqoridagi muammoni hal etish uchun maxsus belgi ya'ni 'escape character' bilan birga ishlatishingiz mumkin \"
:
txt = "We are the so-called \"Vikings\" from the north."
—-— O'zingiz sinab ko'ring —-—
Python-da ishlatiladigan boshqa maxsus belgilar:
Agar savollaringiz bo'lsa, telegram guruhimizda bemalol muhokama qilishingiz mumkin!
O'zingizni va yaqinlaringizni asrang! Telegram kanalimiz : @online_web_dasturlash