تنسيق السلاسل النصية#
مقدمة#
تُستخدم الدالة .format() في بايثون لإنشاء سلاسل نصية تتضمن متغيرات أو تعابير أو قيم. تستبدل هذه الدالة عناصر نائبة {} في السلسلة النصية بالقيم المُقدمة داخل .format().
x = 1
y = 5
# Display the variables using .format()
brain.print("Position: ({}, {})".format(x, y))
# Display a calculation using .format()
brain.print("Sum: {}".format(5 + 3))
wait(1, SECONDS)
# Display the time using .format()
brain.print("Time: {}".format(brain.timer_time(SECONDS)))
تنسيق الأرقام باستخدام .format – إدراج القيم والتعبيرات في سلسلة نصية.
:.xf– يحدد عدد المنازل العشرية المراد عرضها.round– يقوم بتقريب رقم إلى عدد معين من المنازل العشرية.:,– يضيف الفواصل كفواصل للآلاف.:.x%– يحول العدد العشري إلى نسبة مئوية مع x منزلة عشرية.:#x– يقوم بتنسيق رقم كنظام سداسي عشري.:b– يقوم بتنسيق رقم كرقم ثنائي.
دمج السلاسل النصية – دمج النصوص والقيم.
.format()– دمج السلاسل والمتغيرات في تعبير واحد.+ operator– دمج السلاسل يدويًا مع تحويل النوع الاختياري.
طرق التعامل مع السلاسل النصية – تغيير حالة الأحرف في النص.
التحقق من وجود أجزاء نصية فرعية – اختبار وجود النص أو موضعه.
in– يتحقق مما إذا كانت كلمة ما موجودة في سلسلة نصية.startswith()– يتحقق مما إذا كانت السلسلة تبدأ بقيمة معينة.endswith()– يتحقق مما إذا كانت السلسلة تنتهي بقيمة معينة.
تسلسلات الهروب – تنسيق الإخراج باستخدام الأحرف الخاصة.
تنسيق الأرقام باستخدام .format#
يمكن استخدام .format للتحكم في كيفية ظهور الأرقام، بما في ذلك المنازل العشرية والتقريب وأنماط التنسيق الأخرى مثل:
Fixed Decimal Places#
.xf يتحكم في عدد المنازل العشرية التي يتم عرض الرقم بها.
Usage:
:.xf
حدود |
وصف |
|---|---|
|
عدد المنازل العشرية المطلوب عرضها. |
# Display pi with 2 decimal places
pi = 3.1415926535
brain.print("Pi: {:.2f}".format(pi))
# Output: Pi: 3.14
Rounding Numbers#
تقوم الدالة round بتقريب الرقم إلى عدد محدد من المنازل العشرية قبل التنسيق.
Usage:
round(number, x)
حدود |
وصف |
|---|---|
|
الرقم المراد تقريبه. |
|
عدد المنازل العشرية التي يتم التقريب إليها. |
# Display a value rounded to only 2 decimal places
value = 5.6789
brain.print("Rounded: {}".format(round(value, 2)))
# Output: Rounded: 5.68
Thousands Separator#
:, يقوم بإدخال الفواصل كفواصل للآلاف لجعل الأرقام الكبيرة أكثر قابلية للقراءة.
Usage:
:,
حدود |
وصف |
|---|---|
لا يحتوي مُحدد التنسيق هذا على أي معلمات. |
# Display a large number separated with commas
number = 1234567
brain.print("Formatted: ")
brain.print("{:,}".format(number))
# Output: Formatted: 1,234,567
Percentage#
:.x% يقوم بتنسيق القيم العشرية كنسب مئوية عن طريق ضرب القيمة في 100 وإضافة علامة النسبة المئوية.
Usage:
:.x%
حدود |
وصف |
|---|---|
|
عدد المنازل العشرية المطلوب عرضها. |
# Display a converted decimal to a percentage
value = 0.875
brain.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%
Hexadecimal#
:#x يحول الأرقام إلى النظام الست عشري.
Usage:
:#x
حدود |
وصف |
|---|---|
لا يحتوي مُحدد التنسيق هذا على أي معلمات. |
# Convert 255 to hexadecimal
number = 255
brain.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff
Binary#
:b يحول الأرقام إلى النظام الثنائي (الأساس 2).
Usage:
:b
حدود |
وصف |
|---|---|
لا يحتوي مُحدد التنسيق هذا على أي معلمات. |
# Convert 3 to binary
brain.print("Binary: {:b}".format(3))
# Output: Binary: 11
دمج الأوتار#
يمكنك دمج (أو ربط) السلاسل النصية باستخدام طريقتين:
Using .format#
أدخل القيم مباشرة في السلسلة باستخدام {}.
# Display an answer based on the given emotion
emotion = "good"
brain.print("I'm {}, you?".format(emotion))
+ Operator#
قم بربط أجزاء متعددة باستخدام +.
ملاحظة: يجب أولاً تحويل القيم غير النصية إلى سلاسل نصية باستخدام الدالة str().
# Display the x and y values
x = 10
y = 20
brain.print("X: " + str(x) + ", Y: " + str(y))
طرق السلاسل النصية#
توفر لغة بايثون طرقًا مدمجة لتعديل السلاسل النصية والتحقق منها.
upper#
upper يحول جميع الأحرف في السلسلة إلى أحرف كبيرة.
Usage:
upper()
حدود |
وصف |
|---|---|
لا تحتوي هذه الطريقة على أي معلمات. |
# Capitalize a string with .upper()
message = "vexcode"
brain.print(message.upper()) # Output: VEXCODE
lower#
lower يحول جميع الأحرف في السلسلة إلى أحرف صغيرة.
Usage:
lower()
حدود |
وصف |
|---|---|
لا تحتوي هذه الطريقة على أي معلمات. |
# Make a string lowercase with .lower()
message = "VEXCODE"
brain.print(message.lower()) # Output: vexcode
التحقق من السلاسل الفرعية#
in#
in هي كلمة مفتاحية تُرجع قيمة منطقية تشير إلى ما إذا كانت سلسلة فرعية (كلمة أو جزء من النص) موجودة في سلسلة نصية.
True– الكلمة موجودة في السلسلة.False– الكلمة غير موجودة في السلسلة.
message = "Hey everyone!"
if "Hey" in message:
brain.print("Hello!")
startswith#
startswith تُرجع قيمة منطقية تشير إلى ما إذا كانت السلسلة تبدأ بقيمة معينة.
True- الكلمة تبدأ السلسلة.False– الكلمة لا تبدأ السلسلة.
Usage:
startswith(substring)
حدود |
وصف |
|---|---|
|
السلسلة الفرعية التي يجب التحقق منها في بداية السلسلة. |
# Check for 'CTE' at the start of a string
message = "CTE Robot"
if message.startswith("CTE"):
brain.print("CTE first!")
endswith#
endswith تُرجع قيمة منطقية تشير إلى ما إذا كانت السلسلة تنتهي بقيمة معينة.
True– الكلمة تنهي السلسلة.False– الكلمة لا تُنهي السلسلة.
Usage:
endswith(substring)
حدود |
وصف |
|---|---|
|
السلسلة الفرعية التي يجب التحقق منها في نهاية السلسلة. |
# Check for `Robot` at the end of a string
message = "CTE Robot"
if message.endswith("Robot"):
brain.print("Robot last!")
تسلسلات الهروب#
تُستخدم تسلسلات الهروب كأحرف خاصة داخل السلاسل النصية لتنسيق مخرجات النصوص.
New Line#
\n ينقل النص إلى سطر جديد عند الطباعة.
# Display text on two lines
brain.print("First line\nSecond line")
Tab Spacing#
\t يُدرج مسافة جدولة بين الكلمات أو الأرقام.
# Display the quantity of disks
quantity = 2
brain.print("Disks:\t", quantity)