تعتبر السلاسل/النصوص عبارة عن قائمة list من الحروف و نستطيع اجراء بعض العمليات عليها باستخدام مجموعة من الدوال او المؤثرات. String هو احد الاصناف في بايثون ويحتوي على مجموعة من الطرق/ الدوال التي نستطيع استخدامها لتعديل شكل النصوص او البحث بداخلها وغيرها.
التعريف
يستخدم النوع String لتخزين النصوص، تستخدم علامات التنصيص ” او ‘ لتحديد النصوص واذا كان النص يحتوي على اكثر من سطر نستخدم ثلاث علامات تنصيص ”’ او “””.
تشغيلx = "Hello World!!" print(x) y = 'Hello World!!' print(y) z = ''' Hello World. New Line Another New Line ''' print(z) m = """ Hello World. New Line Another New Line """ print(m)
العمليات Operations
()len
نستطيع استخدام الدالة ()len لحساب عدد الحروف في النص
تشغيلa = "Hello World" # نحسب عدد الحروف في النص print(len(a)) # 11
ملحوظة: عدد الاحرف في المثال بالاعلى هو 11 وذلك لان المسافة " " بين الكلمتين تعتبر احد الحروف/الرموز
التقطيع slicing
التقطيع هو احد المصطلحات الذي يستخدم مع النصوص والمقصود به ارجاع جزء من النص. ويتم التعامل فيها مع النصوص على انها مصفوفة. ذلك بتحديد ترتيب حروف البداية و النهاية
ملحوظة في بايثون كالعديد من لغات البرمجة، يبدأالتسلسل (index) من الصفر، لذا اذا اردنا تحديد الحرف الثاني من الكلمة يكون التسلسل هو 1تشغيل
txt = "Programming is Fun" # طباعة الحرف الثالث print(txt[2]) # ارجاع جزء من النص من الحرف الثاني الى الحرف الرابع sub_txt = txt[1:4] print(sub_txt) #rog # اذا لم يتم تحديد تسلسل البداية # تعتبر البايثون البداية من اول النص print(txt[:4]) # Prog # اذا لم يتم تحديد تسلسل النهاية # تعتبر البايثون النهاية هي اخر النص print(txt[3:]) # gramming is Fun
ملحوظة: عند التقطيع الحرف في تسلسل النهاية لا يتم ارجاعه. لذا في المثال السابق [1:4]txt العنصر الخامس (صحب التسلسل 4) لم يتم ارجاعه
نستطيع في بايثون تحديد التسلسل بالسالب، حيث يعتبر ان تسلسل اخر حرف في بايثون هو -1 و الحرف قبل الاخير -2 وهكذا الى ان نصل الى اول حرف. و هي ميزة تمكننا من التعامل بسهولة مع النص. فمثلا اذا احتجنا ان نقتطع النص من الحرف الثاني الى الحرف قبل الاخير يكون كالتالي
txt = "Python is Easy" print(txt[1:-1]) # ython is Eas
الدمج Concatenation
نستطيع ان ندمج بين نصين او اكثر باستخدام المؤثر “+”
تشغيلa = "Hello" b = "World" txt = a + " " + b print(txt) # Hello World
in
نستطيع التأكد اذا ما كان حرف او كلمة او جملة موجودة في نص ما باستخدام in ويكون نوع الراجع boolean
تشغيلtxt = "I love Porgramming." check = "I" in txt print(check)# True
الدوال/الطرق methods
يوفر الصنف string مجموعة من الطرق/الدوال التي نستطيع استخدامها
()upper
تستخدم الطريقة upper لتحويل حروف النص الى حروف كبيرة Capital
تشغيلa = "My name is Ahmad" b = a.upper() print(b) # MY NAME IS AHMAD
ملحوظة: قيمة المتغير a لم تتغير، upper تقوم بتوليد نص جديد كل حروفه كبيرة (Capital)
()lower
بالمثل ستخدم الطريقة lower لتحويل حروف النص الى حروف صغيرة Small
تشغيلa = "My name is Ahmad" b = a.lower() print(b) # my name is ahmad
()replace
تستخدم الطريقة replace لاستبدال حرف او جزء من النص بجزء اخر، تحتاج الطريقة الى مدخلين:
* الاول: جزء النص الذي نريد استبداله
* الثاني: القيمة التي نستبدلها بها
a = "I am Habby" b = a.replace("b","p") print(b) # I am Happy c = "I am sad" d = c.replace("sad","Happy") print(d) # I am Happy
ملحوظة: replace تقوم باستبدال كل حدوث لجزء النص الذي نريد استبداله مثل b => p في المثال بالاعلى
الموقع جدا جميل و مفيد و أنصح كل الناس بتجربته
شكرا جزيلا على هذه الدروس فعلا الموضوع مفيد جدا