دروس الوحدة (4/4)
الطباعة والسلاسل f
لتوصيل شيء ما إلى المستخدم (أو لمعرفة ما يحدث في الداخل
برنامجنا) نستخدم وظيفة print(...) المضمنة. لتأليف
نص من قيم متعددة، وبناء الجملة الحديث والمفضل هو
** سلسلة و **.
محمي_INLINE_8
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 2يمكن لـ print أن يأخذ أي عدد تريده من الوسائط: فهو يجمعها بمسافة (بواسطة
الافتراضي) ويضيف سطرًا جديدًا في النهاية. يمكنك تغيير كليهما باستخدام
معلمات sep وend:
print("a", "b", "c", sep="-") # a-b-c
print("senza newline", end="") # niente \n dopoسلسلة f: الاستيفاء الحديث
f-string عبارة عن سلسلة مسبوقة بـ f: داخل الأقواس المعقوفة {...}
يمكنك إدراج أي تعبير بايثون، والذي سيتم تقييمه وإدراجه في ملف
النتيجة:
nome = "Ada"
anni = 30
print(f"Mi chiamo {nome} e ho {anni} anni.")
# Mi chiamo Ada e ho 30 anni.داخل الأقواس يمكنك إجراء المكالمات والعمليات والوصول إلى الكائنات - إنه كذلك كود بايثون من جميع النواحي:
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: أقصر وأكثر قابلية للقراءة وأسرع.
التنسيق المتقدم باستخدام سلاسل f
تدعم سلاسل F مواصفات التنسيق الغنية مباشرة داخل الأقواس المتعرجة. على سبيل المثال، لتنسيق رقم عشري بمنزلتين عشريتين بالضبط، يمكنك كتابة:
price = 19.99
print(f"Price: {price:.2f} $")يشير المحدد :.2f إلى أننا نريد تمثيل العدد العشري بمنزلتين عشريتين بالضبط.
جربه بنفسك
بالنظر إلى `name = 'Ada'' و'age = 30`، أنشئ السلسلة 'Ada ha 30 anni' باستخدام سلسلة f وقم بتعيينها إلى `line`. تقييم "الخط".
إظهار التلميح
بناء الجملة: f"شيء {متغير} شيء آخر"
الحل متاح بعد 3 من المحاولات
تمرين المراجعة
اطبع باستخدام print() السلسلة 'pi greco vale 3.14' بدءًا من `pi = 3.14159`، باستخدام سلسلة f بمواصفات تنسيق مكونة من رقمين عشريين.
إظهار التلميح
تأتي مواصفات التنسيق بعد النقطتين داخل الأقواس: {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} €" وقم بتعيين النتيجة إلى خط الإيصال.
الحل متاح بعد 3 من المحاولات