التخطي إلى المحتوى الرئيسي

لغة البرمجة بايثون: الدرس السابع التعامل مع السلاسل النصية

 المقدمة

التعامل مع النصوص شيء مهم في اي لغة برمجة ولغة بايثون لا تختلف عن سواها في التعامل مع النصوص والعكس هي اقوى من غيرها في التعامل مع النصوص وفي مقالنا هذه سوف نتعلم كيفية التعامل مع النصوص في لغة بايثون واريد ان اوضح أني لن اشرح كل الدوال الموجودة في اللغة للتعامل مع النصوص ولاكن سوف اشرح اهمها من وجهت نضري كا شخص يعلم ويتعلم بايثون له اكثر من 5 سنوات واذا كنتم ترون انكم تريدون معرفة اكثر يمكنكم البحث عن python strings methods وسوف تضهر لكم النتائج او حتى يمكنكم البحث داخل موقع بايثون لذالك دعونا نبدء على بركة الله





شرح دالة split 

هذه الدالة بسيطة جدا وانشالله سوف تكون كل الدوال بسيطة. هذه الدالة تقوم بأزالة الأحرف من الكلمة على سبيل المثال لديك كلمة 

Hello, And welcome to GGH Community موجودة في متغير اسمه على سبيل المثال txt وانت تريد ازالة كل حرف l من الكلمة هنا عليك استخدام دالة split كما هو موضح في المثال التالي

txt = 'Hello, And welcome to GGH Community'
new_text = txt.split('l')
print(new_text)


['He', '', 'o, And we', 'come to GGH Community']

كما رأيتم تم ازالة كل احرف l واذا لاحظتم ايضا انني جعلت القيمة الجديدة او النص الجديد في متغير اسمه new_text وبذالك انا حافظت على النص القديم في المتغير txt وحفظت النص الجديد في متغير جديد اسمه new_text 


شرح strip 

هذه الدالة جدا بسيطة في عملها حي مثل الدالة السابقة ولاكن محدودة اكثر هي تحذف فقط الشياء الموجودة في بداية الكلام يعني على سبيل المثال لدي كلمة 

Hello, and welcome to ggh team

اذا اردة حذف حرف H في بداية الكلمة سوف استخدم دالة strip ولاكن اذا اردة مثلا حذف حرف مثل l او e لا يمكنني لأنهم ليس في بداية الكلمة وهذه مثال بسيط عن الأستخدام انتم قومو بنسخ الكود وجربوه بأنفسكم

txt = 'Hello, And welcome to GGH Team'
print(txt.strip('H'))

جميل والأن اذا بدلنا حرف H بحرف اخر لن يحصل شيء لأنه ليس في بداية الكلمة واذا اردنه مثلا حذف اخر حرف من الكلمة نضيف الى دالة strip نضيف r لتصبح rstrip وسوف تحذف من اليمين ونفس الشروط تنطبق عليها في الحذف

شرح دالة upper 

هذه الدالة جدا بسيطة لدرجة لن اطيل شرحها هي فقط تقوم بتحويل الحرف من صغيرة الى كبيرة وهذه مثال بسيط جربو الكود بأنفسكم

txt = 'Hello, And welcome to GGH Team'
upper_text = txt.upper()
print(upper_text)

كما رأيتم تم تحويل النص الى احرف كبيرة


شرح دالة lower 

دالة lower مثل دالة upper لن نطيل الشرح فيها وايضا عملها مثل عمل دالة upper ولاكن العكس يعني دالة upper تحول النص الى كبير دالة lower تحول النص الى صغير وهذه مثال بسيط

txt = 'Hello, And welcome to GGH Team'
lower_text = txt.lower()
print(lower_text)


شرح دالة replace 

هذه الدالة مهمة في بايثون وبسيط ايضا هذه الدالة تقوم بتبديل الحروف على سبيل المثال انت انشأت نص ولاكن بالخطأ قمت بأضافة حرف او كتبت حرف بالخطأ في هذه الحالة يجب علينا تعديل النص ولاكن لنفرض لسبب ما نحن لا نصتطيع تعديل النص مره اخرى فعلينا استخدام دالة replace لتبديل الحرف المطلوب وهذه مثال بسيط سوف اكتب حرف خاطئ وابدله باستخدام دالة replace 

txt = 'Hello, Snd welcome to GGH Team'
new_txt = txt.replace('S','A')
print(new_txt)

 دمج النصوص

في هذه الجزء من المقال سوف نتعلم كيفية دمج النصوص في بايثون على سبيل المثال قمنا بأنشاء مدخل وكتبنا للمستخدم ان يدخل لنا اسمه وهذه الأسم سوف يتم حفظه في متغير اسمه user_name وهذه الأسطر الذي سوف نكتبه في السكربت user_name = input('Enter Your Name: ') ونريد ان نطبع له اسمه ونقول له hello واسمه سوف تكون نتيجة هذه العملية المثال التالي

user_name = input('Enter Your Name: ')
print('Hello, '+user_name)

واذا لاحظتم قمت بأضافة مسافة بعد الكلمة من اجل اضافة مسافة بين كلمة hello  واسم الشخص واذا لم اكن قمت بأضافة المسافة سوف تكون النتيجة كالتالي Hello,Toxic وهنا انا افترضت ان الشخص قام بأدخال كلمة Toxic وتجد هناك طرق اكثر للدمج وسوف نشرحها انشالله تعالى ولاكن لا يمكنكم دمج نص مع رقم او اي قيمة اخرى غير النص

شرح سلاسل الهروب

 شرح \'

في التعامل مع النصوص نحتاج الكثر الكثر من الشياء التي تسهل علينا التعامل مع النصوص على سبيل المثال انت لديك هذه النص

i can't help you right now وهذه النص في متغير اسمه reply وهو على الشكل التالي

reply = 'i can't help you right now' واذا شغلنا الكود سوف يضهر لنا خطأ بسبب ' في كلمة can't لأنها قامت بأغلاق النصونحن نريد ان تعتبرها بايثون ضمن النص وليس علامة تنصيص فكيف يمكننا حل هذه المشكلة. انت لديك الكثير من الطرق لحل هذه المشكلة واول طريقة استخدام علامة التنصيص المزدوجة بدل المفردة وسيكون النص كالتالي 

reply = "i can't help you right now" وهنا نحن حللنا المشكلة

بس لنفرض انك حاب تستخدم طريقة غير انك تبدل علامات التنصيص فا عدك طريقة ثانيه وهي استخدام سلاسل الهروب واول شي رح نشرح \' في النص عند استخدام علامة تنصيص وتعطيك خطأ يجب عليك وضع قبلها \ لكي يعتبر مفسر بايثون انها مجرد نص وهذه مثال جدا بسيط

txt = 'What\'s the best way to learn a new language?'
print(txt)

ومثال اخر لنفترض اننا نريد استخدام \ في الكلمة فعليك وضع \ اخرى قبلها من اجل ان تجعل مفسر بايثون يفهم انها نص وهذه مثال بسيط

txt = 'What\\s the best way to learn a new language?' 
print(txt)

 شرح \n

جميل لنفترض الأن لدينا نص طويل ونريد ان نطبع ولاكن هذه النص متعدد الأسطر على سبيل المثال هذه النص

Welcome! We're thrilled to have you join our community.

Hello and welcome! We're delighted you're here with us.

ولاكن انت لا تريد استخدام 2 print هنا عليك استخدام سلاسل الهروب وكتابة امر سطر جديد كما هو موضح في المثال التالي

txt = 'Welcome! We\'re thrilled to have you join our community.\nHello and welcome! We\'re delighted you\'re here with us.'
print(txt)

وكما لاحظتم كتابة \n تعني سطر جديد وايضا اذا لاحظتم النصوص المستخدمة يوجد داخلها علامة تنصيص فأنا استخدمة \ قبل كل علامة منهم وجعلة المفسر يفهم انها نص 

شرح \t

 حسنا لفترض انك تريد وضع 4 مسافات قبل النص المراد طباعته ليس من الطبيعي كتابة 4 مسافات كل مره ولنفترض انك لديك نص طويل وتريد اضافة 4 مسافات مع النص ولنفترض انك لديك هذه النص

In the gardens of life, hopes have blossomed,

Sun rays dance on the canvas of the sky,

With every breeze, a new hope is carried,

In the heart of the moment, dreams and joy are born.

وتريد اضافة 4 مسافات بعد كل سطر او قبله فعليك استخدام سلاسل الهروب من جديد وكتابة الأمر الجديد كما هو موضح في المثال التالي

txt = '\tIn the gardens of life, hopes have blossomed,\n\tSun rays dance on the canvas of the sky,\n\tWith every breeze, a new hope is carried,\n\tIn the heart of the moment, dreams and joy are born.'
print(txt)

 وكما لاحظتم استخدمت \t لأضافة 4 مسافات قبل كل سطر منهم وكل ما اضفتم \t سيكون هناك 4 مسافات جديدة في المكان الذي اضفتم فيه \t 

شرح دالة join

هذه الدالة بسيطة ولاكن لا اعلم لماذا هناك الكثير من المربمجين لا يفهمون معناها وهي جدا بسيطة

هذه الدالة تأخذ نص وتكرر النص الذي لديها بعدد احرف النص الذي اخذته على سبيل المثال لدي كلمة mohammed في متغير اسمع txt واستخدمة الدالة ووضعت aaaa ستكون النتيجة هاكذا amohammedamohammedamohammeda

اذا لاحظتم اضاف اول حرف من a وبعدها كتب الكلمة التي توجد داخل المتغير واستمر هاكذا حتى انتهى الكلام من aaaa وهذه مثال بسيط

txt = 'welcome'
print(txt.join('1234'))
1welcome2welcome3welcome4

كما لاحظتم تم تكرار الكلام على حسب عدد النص المأخوذ 

الخاتمة

والى هنا وقدج وصلنا الى نهاية مقال اليوم اذا اردتم ان تتعلمو اكثر فقط اضغط هنا وسوف يحولكم الى موقع بايثون الرسمي وهناك سوف تجدون كل الدوال مع شرح لبعضها والبعض لا



تعليقات

المشاركات الشائعة من هذه المدونة

شرح انشاء Label في tkinter

بدرسنا مال اليوم راح نشرح عن Label بtkinter درس اليوم سهل وبسيط وحلو بس احتاج منكم تركزون وياي بالشرح اليوم راح نتعلم شي اسمه widgets زين شنو هوا widgets الـwidgets اريدكم تتخايلونها مثل قطع Lego الي يستخدمونها الأطفال ببناء العابهم وكل widgets الها شغل مختلف عن الثانية يعني مثلا اكو widgets تكتب داخلها شي وهيه تعرضه على البرنامج( نص ) واكو widgets تضغط عليه وتسويلك شي معين ( زر ) اكو widgets تسمح للشخص الي يستخدم البرنامج انو هوا يكتب داخلها ( حقل ادخال ) واليوم راح اشرح الكم widgets الي تخلينا نعرض احنا شي على النافذة مالتنا  وهاي widget اسمها Label والها خصائص تخلي شكلها افضل او تخلينا نتحكم بالشكل مالتها مثل ( حجم الكلام, لون الكلام, خلقة الكلام, شكل الكلام ) وهواي اشياء ثانية اني شرحت شي بسيط منها بفيديو على قناتي على اليوتيوب وهاذا درسها شاهدو حتى تفهمون الي راح تقرو ورا الفيديو الفيديو   خاصة text هيا نكتب بيها الكلام الي راح يضهر على البرنامج مالتنا يعني مثل ما تكول المكان الي نكتب بيه الرسالة وهاذا مثال بسيط...

الأتصال بي MySQL

  بسم الله الرحمن الرحيم كيف حاليكم اصدقائي ان شاء الله بخير وعلى خير انا محمد و اليوم عدة لكم مقال جديد و في مقالنا لليوم سوف نتعلم كيف نقوم بالأتصال بي MySQL و سوف نقوم بحل مشاكل الأتصال كا المشكلة التي رقمها 1045 و سوف نقوم باأتصال بكل سلاسة لن اطيل عليكم و دعونا نرى الفيديو          و يا شباب يجب مراعات الأرف الصغيرة و الكبيرة حيث ان بايثون تهتم جدا في الأحرف الصغيرة و الكبير وفي حلقتنا لليوم قد استعما امر connect في مكتبة mysql.connector و قد ادخلنا في داخل امر connect قيم لي ال host و user و passwd و القيم التي ادخلناها هيا user ='root' و passwd ='' و host='localhost' و قمنا بعمل print("Done Connect ") حيث اذا تم الأتصال سوف يطبعها لنا و اذا ضهر خطاء لن يتم طبعتها و هاكذا هاذا هوى السكربت import mysql.connector as mysql mysql.connect(host='localhost',user='root',passwd='') print("Done Connect") و الى هنا وقد وصلنا الى نهاية مقالنا لليوم اتمنى انه اعجبكم وشكرا و مع السلامة

لغة البرمجة بايثون: الدرس الخامس المتغيرات

المتغيرات Variables المتغيرات هي عبارة عن صندوق نقوم بوضع داخله قيم مثل الصندوق الفلاني سوف تجد فيه الشياء الفلاني مثال ثاني الصندوق الذي اسمه حسن سوف تجد داخله معلومات تخص حسن مثل اسمه او عمره او تاريخ ميلاده او مكان سكنه او الصندوق الفلاني سوف تجد فيه الرقم الفلاني وهاكذا ولكل صندوق او متغير هناك نوع وتكلمنا عن هذه الأنواع في مقال الدرس الرابع انواع البيانات من دورة لغة البرمجة بايثون يمكنكم قراءة المقال بالضغط هنا لماذا تم تسميتها متغيرات اسمها متغيرات لأنها يمكن ان تتغير قيمتها على سبيل المثال متغير بأسم a قيمته الأن hasan يمكن تبديل قيمته وجعلها nour او حتى يمكن جعلها رقم ليس هناك فرق   ماذا نستفيد من تعلم او استعمال المتغيرات   الأستفاد من المتغيرات كثيرة ولاكن سوف اذكر بعضها 1. عدم تكرار النصوص  2. عدم ضياع بيانات في البرنامج 3. تسهيل كتابة البرامج  والأن ماذا اعني بعدم تكرار النصوص لفترض انك تريد كتابة جملة طويلة مثل جملة   Welcome to the so-and-so to learn so-and-so things وانت تريد ان تستخدم هذه الكلمة في عدة اماكن من البرنامج اذن انت سوف تطر الى كتاب...