Python میں dynamic values کے ساتھ strings بنانے کے کئی طریقے ہیں۔ جدید اور تجویز کردہ طریقہ f-string (formatted string literal) ہے، جو Python 3.6 میں متعارف ہوا۔
f-strings — جدید default
name =
age =
msg =
f prefix آپ کو expressions کو براہِ راست {} کے اندر embed کرنے دیتا ہے — مختصر، پڑھنے میں آسان اور تیز۔ یہ جدید Python میں ترجیحی طریقہ ہے۔
f"{3.14159:.2f}" # "3.14" — 2 decimal places
f"{1000000:,}" # "1,000,000" — thousands separator
f"{0.85:.1%}" # "85.0%" — percentage
f"{42:05d}" # "00042" — pad with zeros to width 5
f"{'hi':>10}" # " hi" — right-align in width 10
f"{'hi':^10}" # " hi " — center
value کے بعد :spec precision، padding، alignment اور number formatting کو کنٹرول کرتا ہے — صاف ستھرے output کے لیے طاقتور۔
f"{name=}" # "name='Ann'" — prints both the expression AND value
= فوری debugging کے لیے کارآمد ہے — یہ variable کا نام اور اس کی value دونوں دکھاتا ہے۔
"{} is {}".format(name, age) # str.format() — pre-f-string standard
"%s is %d" % (name, age) # %-formatting — old C-style (avoid in new code)
name + " is " + str(age) # concatenation — verbose, error-prone
.format() پرانے code میں اب بھی عام ہے؛ %-formatting legacy ہے؛ سادہ concatenation کی حوصلہ شکنی کی جاتی ہے (verbose ہے اور manual str() conversion کی ضرورت پڑتی ہے)۔
String formatting کی مسلسل ضرورت پڑتی ہے — messages، logs، output اور queries بنانے میں۔
F-strings جدید، پڑھنے میں آسان اور efficient معیار ہیں، اور ان کے format specifiers (precision، padding، alignment، separators) کو جاننا آپ کو verbose code کے بغیر صاف، پیشہ ورانہ output تیار کرنے دیتا ہے۔
پرانے .format() اور % انداز کو پہچاننا موجودہ codebases پڑھتے وقت مدد دیتا ہے۔
f-strings کا اچھا استعمال واضح اور idiomatic Python لکھنے کا ایک چھوٹا مگر ہمہ گیر حصہ ہے۔