ماڈیول اسباق (4/4)
پرنٹنگ اور ایف سٹرنگز
صارف سے کچھ بات چیت کرنے کے لیے (یا یہ دیکھنے کے لیے کہ اندر کیا ہو رہا ہے۔
ہمارا پروگرام) ہم بلٹ ان print(...) فنکشن استعمال کرتے ہیں۔ تحریر کرنا
متعدد اقدار سے متن، جدید اور ترجیحی نحو ہے۔
f-string۔
print(...)
print("Ciao, mondo!") # Ciao, mondo!
print("a", "b", "c") # a b c (separati da spazio)
print(2 + 2) # 4
print("riga 1", "riga 2") # riga 1 riga 2print آپ جتنے دلائل چاہیں لے سکتے ہیں: یہ ان کو اسپیس کے ساتھ جوڑتا ہے (بذریعہ
ڈیفالٹ) اور آخر میں ایک نئی لائن شامل کرتا ہے۔ آپ دونوں کو کے ساتھ تبدیل کر سکتے ہیں۔
sep اور end پیرامیٹرز:
print("a", "b", "c", sep="-") # a-b-c
print("senza newline", end="") # niente \n dopof-string: جدید انٹرپولیشن
ایک f-string ایک سٹرنگ ہے جو f کے ذریعہ لگائی گئی ہے: منحنی خطوط وحدانی کے اندر {...}
آپ کوئی بھی ازگر کا اظہار داخل کر سکتے ہیں، جس کا جائزہ لیا جائے گا اور اسے میں داخل کیا جائے گا۔
نتیجہ:
nome = "Ada"
anni = 30
print(f"Mi chiamo {nome} e ho {anni} anni.")
# Mi chiamo Ada e ho 30 anni.منحنی خطوط وحدانی کے اندر آپ کالز، آپریشنز، آبجیکٹ تک رسائی رکھ سکتے ہیں۔ Python کوڈ ہر لحاظ سے:
prezzo = 12.5
quantita = 3
print(f"Totale: {prezzo * quantita:.2f} €")
# Totale: 37.50 €بڑی آنت کے بعد :.2f ایک فارمیٹ سپیک ہے: اس صورت میں "دو اعشاریہ
ہندسے، فکسڈ پوائنٹ"۔ سب سے مفید فارمیٹ کی تفصیلات:
:.Nf— N اعشاریہ ہندسے (f"{pi:.4f}"→3.1416)۔:N/:>N/:<N/:^N— چوڑائی N، دائیں/بائیں/مرکزی سیدھ۔:_یا:,— ہزاروں الگ کرنے والے (f"{1000000:,}"→1,000,000)۔
متبادل نحو (حوالہ کے لیے)
f-strings سے پہلے (Python 3.6 میں متعارف کرایا گیا) دو فارم استعمال کیے گئے تھے۔ آپ کا سامنا اب بھی پرانے کوڈ میں ہوگا:
# stile .format() — verboso ma esplicito
"{} ha {} anni".format("Ada", 30)
# stile %-formatting — molto vecchio
"%s ha %d anni" % ("Ada", 30)نئے کوڈ کے لیے، ہمیشہ f-strings استعمال کریں: چھوٹا، زیادہ پڑھنے کے قابل، تیز۔
ایف سٹرنگز کے ساتھ اعلی درجے کی فارمیٹنگ
F-strings براہ راست گھوبگھرالی منحنی خطوط وحدانی کے اندر بھرپور فارمیٹنگ وضاحتوں کی حمایت کرتے ہیں۔ مثال کے طور پر، اعشاریہ نمبر کو بالکل دو اعشاریہ کے ساتھ فارمیٹ کرنے کے لیے، آپ لکھ سکتے ہیں:
price = 19.99
print(f"Price: {price:.2f} $"):.2f وضاحت کنندہ اشارہ کرتا ہے کہ ہم فلوٹ کی نمائندگی بالکل 2 اعشاریہ 2 مقامات کے ساتھ کرنا چاہتے ہیں۔
خود ہی آزمائیں۔
`نام = 'اڈا' اور `عمر = 30` کو دیکھتے ہوئے، 'اڈا ہا 30 اینی' کو f-سٹرنگ کے ساتھ بنائیں اور اسے `لائن` پر تفویض کریں۔ `لائن` کا اندازہ لگائیں۔
اشارہ دکھائیں۔
نحو: f"something {variable} something else"
3 کوششوں کے بعد حل دستیاب ہے۔
ورزش کا جائزہ لیں۔
2 اعشاریہ کے فارمیٹ اسپیک کے ساتھ ایک f-سٹرنگ کا استعمال کرتے ہوئے، `pi = 3.14159` سے شروع ہونے والی 'pi greco vale 3.14' سٹرنگ کو print() کے ساتھ پرنٹ کریں۔
اشارہ دکھائیں۔
فارمیٹ اسپیک منحنی خطوط وحدانی کے اندر بڑی آنت کے بعد جاتا ہے: {pi:.2f}۔
3 کوششوں کے بعد حل دستیاب ہے۔
اضافی چیلنج
Given a variable `price` set to `19.99`, use an f-string to construct the string `'Price: 19.99 €'` and store it in `receipt_line`. Finally, evaluate the variable.
اشارہ دکھائیں۔
f"Price: {price} €" استعمال کریں اور نتیجہ receipt_line کو تفویض کریں۔
3 کوششوں کے بعد حل دستیاب ہے۔