أساسيات السلاسل النصية

1.4 أساسيات السلاسل النصية

أهداف التعلم

بنهاية هذا القسم، ينبغي أن تكون قادرًا على:

  • استخدام الدالّة المُضمَّنة len() للحصول على طول السلسلة النصية.
  • دمج السلاسل النصية الحرفية والمُتغيِّرات باستخدام العامل +.

علامات الاقتباس

السلسلة النصية (string) هي تسلسل من الأحرف محاط بعلامتَي اقتباس فرديتين (') أو مزدوجتين (") متطابقتين. مثال: "Happy birthday!" و '21' كلتاهما سلسلتان نصيتان.

لتضمين علامة اقتباس فردية (') في سلسلة نصية، أحِط السلسلة النصية بعلامات اقتباس مزدوجة (") متطابقة. مثال: "Won't this work?" لتضمين علامة اقتباس مزدوجة (")، أحِط السلسلة النصية بعلامات اقتباس فردية (') متطابقة. مثال: 'They said "Try it!", so I did'.

سلسلة نصية صالحة سلسلة نصية غير صالحة
"17" أو '17'
17
"seventeen" أو 'seventeen'
seventeen
"Where?" أو 'Where?'
"Where?'
"I hope you aren't sad."
'I hope you aren't sad.'
'The teacher said "Correct!" '
"The teacher said "Correct!" "
جدول 1.3 قواعد السلاسل النصية.

مفاهيم تطبيقية

السلاسل النصية الصالحة وغير الصالحة

1.
أي مما يلي يمثل سلسلة نصية؟
  1. Hello!
  2. 29
  3. "7 days"
2.
أي سطر من الشِفرة يُسند سلسلة نصية إلى المُتغيِّر email؟
3.
أي مما يلي يمثل سلسلة نصية صالحة؟
  1. I know you'll answer correctly!
  2. 'I know you'll answer correctly!'
  3. "I know you'll answer correctly!"
4.
أي مما يلي يمثل سلسلة نصية صالحة؟
  1. You say "Please" to be polite
  2. "You say "Please" to be polite"
  3. 'You say "Please" to be polite'

دالّة len()

الحصول على طول السلسلة النصية — أي عدد أحرفها — من أكثر العمليات شيوعًا على كائنات السلاسل النصية. عند استدعاء دالّة len() على قيمة نصية، فإنها تُرجع طول تلك السلسلة.

نقطة تحقق

استخدام len() للحصول على طول السلسلة النصية

مفاهيم تطبيقية

تطبيق دالّة len() على قيم السلاسل النصية

5.
ما هي القيمة المُرجَعة لـ len("Hi Ali")؟
  1. 2
  2. 5
  3. 6
6.
ما طول سلسلة نصية فارغة ("")؟
  1. غير مُعرَّف
  2. 0
  3. 2
7.
ما هو مُخرَج الشِفرة التالية؟
number = "12"
number_of_digits = len(number)
print("Number", number, "has", number_of_digits, "digits.")
  1. Number 12 has 12 digits.
  2. Number 12 has 2 digits.
  3. Number 12 has number_of_digits digits.

الدمج

الدمج هو عملية تجمع سلسلتين نصيتين أو أكثر بالتسلسل باستخدام عامل الدمج (+). مثال: "A" + "part" يُنتج السلسلة النصية "Apart".

نقطة تحقق

دمج سلاسل نصية متعددة

مفاهيم تطبيقية

دمج السلاسل النصية

8.
أي مما يلي ينتج السلسلة النصية "10"؟
  1. 1 + 0
  2. "1 + 0"
  3. "1" + "0"
9.
أي مما يلي ينتج السلسلة النصية "Awake"؟
  1. "wake" + "A"
  2. "A + wake"
  3. "A" + "wake"
10.
يدخل المستخدم "red" بعد سطر الشِفرة التالي.
color = input("What is your favorite color?")
أي مما يلي ينتج المُخرَج "Your favorite color is red!"؟
  1. print("Your favorite color is " + color + !)
  2. print("Your favorite color is " + "color" + "!")
  3. print("Your favorite color is " + color + "!")
11.
أي مما يلي يُسند "one-sided" إلى المُتغيِّر holiday؟
  1. holiday = "one" + "sided"
  2. holiday = one-sided
  3. holiday = "one-" + "sided"

جرّب بنفسك

طول الاسم

اكتب برنامجًا يطلب من المستخدم إدخال اسمه الأول واسم العائلة بشكل منفصل. استخدم المِحَثّات التالية (الإدخال في المثال بالخط العريض):

  What is your first name? Alan
  What is your last name? Turing

يجب أن يُخرِج البرنامج بعد ذلك طول كل اسم. بناءً على الإدخال في المثال أعلاه، سيكون المُخرَج:

  Your first name is 4 letters long
  Your last name is 6 letters long

جرّب بنفسك

علامات الترقيم

اكتب برنامجًا بلغة بايثون يقوم بما يلي:

  • يُسند السلسلة النصية "Freda" إلى مُتغيِّر، name.
  • يُسند السلسلة النصية "happy" إلى مُتغيِّر، feel.
  • يطبع السلسلة النصية "Hi Freda!" باستخدام دالّة print() واحدة وباستخدام المُتغيِّر name.
  • يطبع السلسلة النصية "I'm glad you feel happy." باستخدام دالّة print() واحدة وباستخدام المُتغيِّر feel.