معالجة البيانات النصية String مع Python
يعتبر نوع البيانات النصية String من بين الأنواع الأكثر شيوعًا في Python. وتعدد طُرق معالجة البيانات النصية String في بايثون… فكيف يتم التعامل مع String من خلال تعليمات Python … ؟؟!!
تعرفنا فى مقالات سابقة على أنواع البيانات في Python وفي مقال أنواع البيانات في Python ذكرنا لمحة موجزة عن نوع البيانات النصية string او التعامل معها وفي هذا المقال سنتناول طريقة معالجة البيانات النصية String في بايثون بالتفصيل لنبدأ…
البيانات النصية String في Python
تصنف البيانات النصية String أو سلال الحروف ضمن مجموعات البيانات المتسلسلة و تعتبر في Python في معظم لغات البرمجة كا Object للـ Data Structure و تتمثل في Python بـ str class . وتوفر Python العديد من الدوال والمعاملات للعمل معها. في هذا المقال سنستعرض طرق التعامل مع String في Python فسوف نشرح التالي:
- إنشاء String في Python.
- استخدام المعاملات مع String.
- دوال String في Python.
- String Formatting.
- التشفير Encoding وفك التشفير Decoding للبيانات النصية String.
إنشاء String في Python
يُعد إنشاء string في بايثون أمرًا بسيطًا مثل تخصيص قيمة لمتغير. وهذه القيمة ببساطة هي تضمين سلسلة من الأحرف بين علامتي اقتباس Qutations ('...') , ولا فرق في Python بين علامات الاقتباس المفردة مثل علامات الاقتباس المزدوجة Double qutations ("..."). لنأخذ مثال :
...........
str1 = "Welcome to Python"
str2 = 'Welcome to Python'
print (str1)
print(str2)
...........
ذكرنا أن القيم للـ String يتم إنشاؤها باستخدام علامات الاقتباس ، سواء علامات الاقتباس المفردة أو المزدوجة ولكن بشرط استخدام نفس الشيء في كلا الطرفين. بالإضافة إلى ذلك ، يمكننا استخدام سلسلة نصية ثلاثية - هذا هو Python-talk للـ string تبدأ وتنتهي بثلاثة أحرف اقتباس (إما ثلاثة علامات اقتباس مفردة أو ثلاث علامات اقتباس مزدوجة). وهنا تكون الجملة النصية طويلة على سبيل المثال:
...........
str1 = '''Welcom to
Python'''
str1 = """Welcom to
Python"""
print(str1)
...........
كما يمكن إنشاء String باستخدام دالة لإنشاء str() بدون اي قيم تقوم بإرجاع string فارغة ، و باستخدام قيم ، فإنها تُرجع قيمة نصية لهذه القيم. أيضًا استخدام دالة str () كدالة تحويل ، وفي هذه الحالة يجب أن تكون القيمة الأولى عبارة عن string أو شيء قابل للتحويل إلى string ، مع تمرير ما يصل إلى قيمتين اختياريتين ، أحدهما يحدد التشفير المطلوب استخدامه والآخر تحديد كيفية معالجة اخطاء التشفير. لنأخذ مثال :
...........
str1 = str(['Wlecom','to', 'Python', 3])
str2 = str(('Wlecom','to', 'Python', 3))
str3 = str(True)
str4 = str(1)
str5 = str(2.5)
...........
استخدام المعاملات مع String
كما ذكرنا في مقال أنواع البيانات في بايثون مع string يمكن استخدام المعامل (+) لدمج string مع بعضها البعض و المعامل (*) لتكرار string عدد من المرات كما في المثال التالي :
...........
str1 = 'Welcome to '
str2 = 'Python'
print( str1 + str2)
print ( str2 * 3)
...........
وبما أن String تعتبر من البيانات التسلسلية فيمكن استخدام الفهرسة indexing لوصول الى عناصر الـ string فيكمن استرجاع قيمة لعنصر محدد أو إرجاع نطاق من الأحرف .عن طريق تحديد بداية ونهاية النطاق ، مفصولين بنقطتين ، لإرجاع جزء من String. كما في المثال التالي :
...........
str1 = 'Welcome to Python'
print (str1[1])
print(str1[11:17])
print(str1[11:])
print(str1[:-9])
...........
يمكن كذلك استخدام in أو not in للتحقق من وجود عنصر معين في string كما يتضح فيما يلي :
...........
str1 = 'Welcome to Python'
print('P' in str1)
print ('P' not in str1)
...........
وواحدة من أروع ميزات Python هي عامل تنسيق string (%) يعتبر هذا العامل بالنسبة إلى string ويعوض عن حزمة الوظائف التي تنتمي إلى عائلة printf ( ) في لغة C. وتتضح بعض استخداماته في الشكل التالي :
وفيما يلي أمثلة على هذه على استخدام هذه المعاملات مع البيانات النصية String:
...........
print(" Welcome to %cython"%('P'))
print(" Welcome to %s %i"%('Python', 3))
print(" Welcome to %s %d"%('Python', 3))
a = 12
print(" 12 in Octal is = %o"%(a))
print(" 12 in hexadecimal is = %x or %X"%(a, a))
print(" %f"%(a))
...........
الـ Output للمثال:
Welcome to Python Welcome to Python 3 Welcome to Python 3 12 in Octal is = 14 12 in hexadecimal is = c or C 12.000000
مع البيانات النصية String توفر Python ايضاً أحرف غير قابلة للطباعة وتسمى بأحرف الهروب Escape Characters حيث تستخدم أحرف الهروب مع النصوص لتنفيذ وظيفة معينة قد تكون تنسيق للنص مثل البدء في سطر جديد أو طباعة رموز معينة مثل طباعة علامات الاقتباس داخل النص والشكل التالي يوضح أشهر أحرف الهروب المستخدمة في Python ووظيفة كلاً منها:
وهنا مثال يوضح طريقة استخدام أحرف الهروب Escape Characters مع البيانات النصية String :
...........
str1 = 'Welcome \t to \n \"Python\"'
print(str1)
...........الـ Output للمثال:
Welcome to "Python"
ولإلغاء المعنى الفعلي لأحرف الهروب نستخدم Raw String- (R/r). في بناء الجملة النصية string الأولية هو نفسه تمامًا مثل string العادية باستثناء عامل تشغيل السلسلة الأولية ، الحرف "r" ، الذي يسبق علامات الاقتباس. يمكن أن تكون "r" صغيرة (r) أو كبيرة (R) ويجب وضعها مباشرة قبل علامة الاقتباس الأولى. كما يتضح في المثال التالي :
...........
print( r'\\ Welcome to Python')
print( R"\\ Welcome to Python")
...........
الـ Output للمثال:
\\ Welcome to Python \\ Welcome to Python
دوال String في Python
تعدد الدوال المستخدمة مع String في بايثون بين دوال تحقق وبحث وتغيير للـ string تطرقنا البعض منها في مقال Data Types في Python وهنا سنناقشها بشئ من التفصيل لنبدأ بتصنيف هذه الداول المجموعات حسب ووظائفها كتالي:
- دوال تعمل على تعديل حالة الأحرف في string.
- دوال تعمل على ضبط المحاذاة والمسافات البادئة.
- دوال البحث مع String.
- جمع وتقسيم الـ String.
- دوال التحقق مع String.
- بعض الدوال التي تعمل مع String.
دوال تعمل على تعديل حالة الأحرف في string
توفر Python مجموعة دوال تجري تعديل على الأحرف في String بنا على حالتها الأصلية ومنها يتضح في الجدول التالي:
Python Functions for Editing Letter Case
| الدالة | الشرح |
|---|---|
| upper() | تعمل على جعل حالة جميع أحرف الـ string بأحرف كبيرة . |
| lower() | تعمل على جعل حالة جميع أحرف الـ string بأحرف صغيرة . |
| casefold() | نفس عمل الدالة lower. |
| capitalize() | تحويل أول حرف لكل جملة بحرف كبير . |
| title() | تحويل أول حرف لكل كلمة بحرف كبير . |
| swapcase() | عكس الحالة الحالية للأحرف . |
وهنا أمثلة توضح طريقة استخدامها مع string:
...........
str1 = "Welcome to Python"
print(str1.upper())
print(str1.lower())
print(str1.casefold())
print(str1.capitalize())
print(str1.title())
print(str1.swapcase())
...........
الـ Output للمثال:
WELCOME TO PYTHON welcome to python welcome to python Welcome to python Welcome To Python wELCOME TO pYTHON
دوال تعمل على ضبط المحاذاة والمسافات البادئة
مع Python يمكن ضبط المحاذاة والمسافات البادئة للـ string مع عدد من الدوال تتضح في الجدول التالي :
Python Align and Whitespace Functions
| الدالة | الشرح |
|---|---|
| expandtabs() | تعمل على ضبط حجم مسافة tab ( \t ) بين الأحرف في string. |
| ljust() | تعمل على اضافة أحرف على يسار string وتأخذ عدد الأحرف و القيم وان لم تحدد القيم ستعين القيمة الافتراضية لها وهي مسافة. |
| rjust() | تعمل على اضافة أحرف على يمين string وتأخذ عدد الأحرف و القيم وان لم تحدد القيم ستعين القيمة الافتراضية لها وهي مسافة. |
| center() | تعمل على توسط النص لقيم محددة وان لم يتم يحدد الحرف فالقيمة الافتراضية هي المسافة. |
| strip () | تعمل على إزالة أي أحرف بادئة (مسافات في البداية) وأحرف لاحقة (مسافات في النهاية) (المسافة هي الحرف البادئ الافتراضي الذي يجب إزالته). |
| lstrip() | تقوم بحذف الاحرف البادئة القيمة الافتراضي للأحرف البادئة هي مسافة ويمكن تحديد أحرف معينة وفي هذه الحال لابد ان تمرر هذه الاحرف الى الداله . |
| rstrip() | تقوم بإزلة أي أحرف زائدة (أحرف في نهاية الـ string ، والمسافة هي الحرف اللاحق الافتراضي الذي يجب إزالته). |
وهنا أمثلة على طريقة استخدام دوال صبط المحاذاة والمسافات لبادءة للـ String من خلال تعليميات Python:
الدالة expandtabs()
...........
str1 = "P\ty\tt\th\to\tn"
print(str1.expandtabs())
print(str1.expandtabs(3))
print(str1.expandtabs(6))
print(str1.expandtabs(12))
...........
الـ Output للمثال:
P y t h o n P y t h o n P y t h o n P y t h o n
الدوال ljust()و rjust()
...........
str1 = "Welcome to Python"
print(str1.ljust(30) , " 3")
print(str1.ljust(30, "*") , " 3")
print(str1.rjust(30) , " 3")
print(str1.rjust(30, "*") , " 3")
...........
الـ Output للمثال:
Welcome to Python 3
Welcome to Python************* 3
Welcome to Python 3
*************Welcome to Python 3
الدالة center()
...........
str1 = "Welcome to Python"
print(str1.center(30))
print(str1.center(30, '*'))
...........
الـ Output للمثال:
Welcome to Python ******Welcome to Python*******
الدوال strip() وlstrip() و rstrip()
...........
str1 = " Welcome to Python "
str2 = "eee...Welcome to Python,,,ccc"
print(str1.strip())
print(str2.strip("e.,c"))
print(str1.lstrip())
print(str2.lstrip("e."))
print(str1.rstrip())
print(str2.rstrip(",c"))
...........
الـ Output للمثال:
Welcome to Python
Welcome to Python
Welcome to Python
Welcome to Python,,,ccc
Welcome to Python
eee...Welcome to Python
دوال البحث مع String
ويوضح الجدول التالي أهم دوال البحث المستخدمة مع string في بايثون:
Python String-search Functions
| الدالة | الشرح |
|---|---|
| find(value) | تبحث عن أول ظهور للقيمة معينة وترجع الـ index لها. ويمكن ان نحدد البحث ضمن نطاق حيث تأخذ قيم تحدد بداية ونهاية النطاق. |
| rfind(value) | تبحث عن أخر ظهور للقيمة معينة وترجع الـ index لها. ويمكن ان نحدد البحث ضمن نطاق حيث تأخذ قيم تحدد بداية ونهاية النطاق |
| index(value) | تبحث عن أول ظهور للقيمة معينة وترجع عن رقم الـ index للقيمة محددة وترجع رقم الـ index وتأخذ هذه القيمة . |
| rindex(value) | تبحث عن رقم الـ index العكسي للقيمة محددة وتأخذ هذه القيمة . ويمكن ان نحدد البحث ضمن نطاق حيث تأخذ قيم تحدد بداية ونهاية النطاق. |
وهنا أمثلة على طريقة عمل دوال البحث مع String في Python:
...........
str1 = "Welcome to Python"
print(str1.find("e"))
print(str1.find("e",3,10))
print(str1.index("e"))
print(str1.index("e",3,10))
print(str1.rfind("e"))
print(str1.rfind("e",0,5))
print(str1.rindex("e"))
print(str1.rindex("e",0,5))
...........
جمع وتقسيم الـ String
توفر python دالة join() لجمع عدد من string في string واحد. و للتقسيم string توفر python مجموعة دوال للجمع والتقسيم و يوضح الجدول التالي عمل دوال الجمع والتقسيم :
Python Functions for Join and Split String
| الدالة | الشرح |
|---|---|
| join() | وتعمل على تجميع الstring مع بعضها البعض كما تجمع عناصر Tuple و List و المفاتيح في Dictionary لتكون في string واحد. |
| split() | وتعمل على تقسيم الـ string الى قائمة List . ويمكن تحديد الفاصل بين العناصر ، والفاصل الافتراضي هي مسافة. |
| splitlines() | وتعمل على تقسيم الـstring بناء على حروف الهروب لسطر جديد "n\ ". |
| rsplit() | وتعمل على تقسم الـ string إلى قائمة ، بدء من اليمين. |
| rpartition() | وتعمل على تقسيم الـ string بناء على قيمة معينة الى 3 اجزاء جز ماقبل القيمة وجزء يضم القيمة و جزء مابعدها . |
وهنا أمثلة على استخدام الدالة join() لدمج Sting
...........
tuple1 = ("Welcome", "To", "Python")
list1 = ["Welcome", "To", "Python"]
dir1 = {"name":"Mona", "country": "Saudi Arabia"}
str1 = "Python"
str2 = "123"
print("*".join(tuple1))
print(",".join(list1))
print("-".join(dir1))
print("+".join(str2))
print(str2.join(list1))
print(str1.join(str2))
print(str2.join(dir1))
...........
الـ Output للمثال:
Welcome*To*Python Welcome,To,Python name-country 1+2+3 Welcome123To123Python 1Python2Python3 name123country
وهنا أمثلة على طريقة عمل دوال تقسيم الـ String في بايثون:
...........
str1 = "Welcome to Python"
print(str1.split())
str2 = "Welcome*to*Python"
print(str2.split("*"))
print(str2.split("*",1))
str3 = "Welcome\nto\nPython"
print(str3.splitlines())
str4 = "Welcome to Python, start the Python course"
print(str4.rsplit())
print(str4.rsplit(","))
print(str4.partition("start"))
...........
الـ Output للمثال:
['Welcome', 'to', 'Python']
['Welcome', 'to', 'Python']
['Welcome', 'to*Python']
['Welcome', 'to', 'Python']
['Welcome', 'to', 'Python,', 'start', 'the', 'Python', 'course']
['Welcome to Python', ' start the Python course']
('Welcome to Python, ', 'start', ' the Python course')
دوال التحقق مع String
توفر Python مجموعة دوال التحقق التي تعمل على التحقق اما من احتواء الـ String على قيم معينة أو من حالة الأحرف في String ويوضح الجدول التالي هذه الدوال مع وظائفها :
Python string-verify functions
| الدالة | الشرح |
|---|---|
| Isspace() | وترجع Ture فقط اذا كان الـ string عبارة عن مسافات whitespaces فقط . |
| isalpha() | وترجعTure في حال الـ string يحتوي فقط على حروف (a-z). |
| Isalnum() | وترجع Ture في حال الـ string يحتوي فقط على حروف (a-z) و ارقام (0-9) أي لابد أن لا يحتوي على رموز مثل # % & ? أو حتى مسافات . |
| isdigit() | وترجع Ture في حال الـ string يحتوي فقط على ارقام لأي نظام عددي . |
| isdecimal() | وترجع Ture في حال الـ string يحتوي فقط على ارقام صحيحة (0-9) تتنمي الى النظام العشري decimal . |
| isnumeric() | وترجع Ture في حال الـ string يحتوي فقط على ارقام صحيحة (0-9) . |
| istitle() | وترجع True في حال كانت جميع الكلمات للـ string تبدأ بحرف كبير وبقية الأحرف صغيرة . |
| isprintable() | وترجع True في حال كانت جميع الحروف قابلة للطباعة . |
| isidentifier() | وترجع True في حال كان الـ string يحتوي على حروف (a-z) و ارقام (0-9) و شرطة سفلية فقط شرط ان لايبدأ برقم .. |
| isupper() | وترجع True اذا كانت حالة جميع الأحرف في الـ string كبيرة. |
| islower() | وترجع True اذا كانت حالة جميع الأحرف في الـ string صغيرة. |
جرب النتائج للأمثلة التالية لمجموعة دوال التحقق من String:
...........
str1 = "Welcome to Python"
str2 = "Python"
str3 = "123"
#String verifying functions in Python
print(str1.isalnum())
print(str1.isspace())
print(str2.isalpha())
print(str3.isdigit())
print(str3.isdecimal())
print(str3.isnumeric())
print(str1.istitle())
print(str1.isprintable()
print(str1.isidentifier())
print(str1.isupper())
print(str1.islower())
...........
بعض الدوال التي تعمل مع String
توفر Python كذلك مجموعة التي تعمل مع الـ string مثل الدوال التي تتضح في الجدول التالي:
Some Python Functions work with string
| الدالة | الشرح |
|---|---|
| len() | ترجع عدد الحروف في كامل الـstring . |
| count(value) | ترجع عدد تكرار حرف معين وتأخذ قيمة الحرف. |
| replace() | تحبث عن جملة وتقوم بإستبدالها بجملة أخرى محددة وتاخذ قيم الجملتين . |
| zfill(value) | تقوم بإزاحة الـ String بمقدار معين وتملاء مكان الازاحة بالقيمة 0 وتأخذ قيمة مقدار الازاحة. |
...........
str1 = "Welcome to Python"
print(len(str1))
print(str1.count("e"))
str2 ="Python"
print(str2.zfill(15))
str3 = str1.replace("Python","JavaScript")
print(str3)
...........
الـ Output للمثال:
17 2 000000000Python Welcome to JavaScript
String Formatting
تساعد الدالة format() على تنسيق ظهور القيم ضمن string ويوضح المثال التالي طريقة عمل الدالة format() :
...........
x = 15
y = 10
print('the numbers are :{} {}'.format(x , y))
print('the numbers are :{0} {1}'.format(x , y))
print('the numbers are :{1} {0}'.format(x , y))
print("==================================="))
print('the numbers are :{a} {b}'.format(a =x , b = y))
print('the numbers are :{b} {a}'.format(b =x , a = y))
print("===================================")
str1 = "The grade is {grade: .2f}"
print (str1.format(grade = 77.753))
...........
الـ Output للمثال:
the numbers are :15 10 the numbers are :15 10 the numbers are :10 15 =================================== the numbers are :15 10 the numbers are :15 10 =================================== The grade is 77.75
نلاحظ في في الأمثلة السابقة تعدد طُرق إدراج القيم في string بواسط الدالة format() كما تعدد أشكال تنسيق القيم في من خلال تحديد نوع التنسيق المطلوب في المثال الأخير رأئينا استخدام 2f ويعني ظهور رقمين بعد الفاصلة العشرية والشكل التالي يوضح أهم رموز التنسيق لقيم البيانات الرقمية:
لاحظ /ي النتائج للأمثلة التالية :
...........
x = 1250
print('the number is :{:d} '.format(x))
print('the number is :{:b} '.format(x))
print('the number is :{:o} '.format(x))
print('the number is :{:X} '.format(x))
print('the number is :{:x} '.format(x))
print('the number is :{:.3f} '.format(x))
print('the number is :{:e} '.format(x))
print("===================================")
y = float("nan")
print('the number is :{:f} '.format(y))
print('the number is :{:F} '.format(y))
...........
الـ Output للمثال:
17 the number is :1250 the number is :10011100010 the number is :2342 the number is :4E2 the number is :4e2 the number is :1250.000 the number is :1.250000e+03 the number is :1.250000E+03 =================================== the number is :nan the number is :NAN
مع الدالة format() يمكن تنسيق المسافات والرموز الظاهرة مع القيم ويوضح الشكل التالي أهم الرموز المستخدمة:
لاحظ /ي النتائج للأمثلة التالية :
...........
x = -15
y = 17
print('the numbers are :{0:} {1:5}'.format(x , y))
print('the numbers are :{0:<5} {1:>5}'.format(x , y))
print('the numbers are :{0:^5} {1:^5}'.format(x , y))
print('the numbers are :{0:=5} {1:+}'.format(x , y))
print('the numbers are :{0:-} {1:}'.format(x , y))
print('the numbers are :{0:<5} {1:+5}'.format(x , y))
print("===================================")
z = 15 * 354 * 1000
print('the number is :{:_} '.format(z))
print('the number is :{:,} '.format(z))
print('the number is :{:,} '.format(z).replace(',','.'))
print('the number is :{:f} '.format(z))
print('the number is :{:.3f} '.format(z))
...........
الـ Output للمثال:
the numbers are :-15 17 the numbers are :-15 17 the numbers are : -15 17 the numbers are :- 15 +17 the numbers are :-15 17 the numbers are :-15 +17 =================================== the number is :5_310_000 the number is :5,310,000 the number is :5.310.000 the number is :5310000.000000 the number is :5310000.000
ويمكن استعمال صيغة مختصرة للـ format كما في المثال كتالي :
...........
x = 45
print(f'the number is :{x:.3f} ')
...........
التشفير Encoding وفك التشفير Decoding للبيانات النصية String
للتشفير string توفر Python الدوال encode() للتشفير و decode() لفك التشفير وفيما يلي شرح طريقة العمل معها:
دالة التشفير encode()
تقوم الدالة encode () بإرجاع نسخة مشفرة من string بنظام التشفير المحدد وإذا لم يحدد نظام التشفير هو فإن تشفير الـ string يكون بالنظام الافتراضي و هو " UTF-8" . و يمكن إعطاء نظام لمعالجة الأخطاء و لتعيين نظام معالجة أخطاء مختلف يتم تحديد نظام معين. عند استدعاء الدالة فالصيغة العامة للدالة التشفير تكون :
string.encode(encoding=encoding, errors=errors)
هذه الـ Parameters هي اختارية وتعني :
encoding التشفير وهنا يمكن أن نحدد نظام التشفير المستخدم (وللإطلاع على أنظمة التشفير يرجى زيارة الرابط هنا ).
errors الأخطاء ومن هنا يمكن أن نعيين نظام لمعالجة الأخطاء. والنظام الافتراضي لمعالجة الأخطاء هو "strict" وقيم أخرى محتملة مثل "ignore" و "replace" و "xmlcharrefreplace" و "backslashreplace" و" namereplace" أو أي اسم آخر مسجل عبر برنامج الترميز. ويوضح الجدول التالي معنى كل من هذه الانظمة :
Handling String Encoding Errors in Python
| النظام | الشرح |
|---|---|
| 'strict' | نظام معالجة الأخطأ الافتراضي ويرسل رسالة الخطأ عند فشل التشفير . |
| 'ignore' | يتجاهل الأحرف التي لا يمكن تشفيرها. |
| 'backslashreplace' | يستخدم الشرطة المائلة العكسية backslash بدلاً من الحرف الذي لا يمكن تشفيره. |
| 'replace' | يستبدل الحرف بعلامة استفهام. |
| 'namereplace' | يستبدل الحرف بنص يشرح الحرف. |
| 'xmlcharrefreplace' | - يستبدل الحرف بحرف xml . |
وهنا مثال على طريقة استخدام دالة التشفير encoding() مع String لنجرب وضع الضمة العربية في الجملة
...........
str0 = "Welcom toُ Python"
enstr0 = str0.encode(encoding='utf8')
print('The encoding string is : ')
print(enstr0)
...........
الـ Output للمثال:
The encoding string is : b'Welcom to\xd9\x8f Python'
دالة فك التشفير decode()
تقوم دالة decode () بفك تشفير الـ string باستخدام برنامج الترميز المسجل للتشفير. تعيينه افتراضيًا على ترميز string الافتراضي. والصيغة العامة لها تكون
string.decode(encoding=encoding, errors=errors)
تماماً كما في دالة التشفير encode() يمكن أن تستخدم دالة فك التشفير الـ Parameters التالية بشكل اختياري وفي حال عدم التحديد ستأخذ القيم الإفتراضية :
encoding فك وهنا نحدد النظام المستخدم لفك التشفير و الإفتراضي هو 'UTF-8'.
errors وهنا نحدد طريقة معالجة الأخطاء و والقيمة الافتراضية له هي 'strict'.
وهنا مثال على طريقة استخدام دالة فك التشفير decode()
...........
str0 = "Welcom toُ Python"
enstr0 = str0.encode(encoding='utf8')
print('The encoding string is : ')
print(enstr0)
print('The decodein string is: ')
print(enstr0.decode('UTF-8', 'strict'))
...........
الـ Output للمثال:
The encoding string is : b'Welcom to\xd9\x8f Python' The decodein string is: Welcom toُ Python
إلى هنا ينتهي هذا المقال الذي تكلم عن طريقة العمل مع البيانات النصية String من خلال تعليمات Python تعرفنا على أهم المعاملات والدوال المستخدمة مع String وأهمها دالة التنسيق format() و دوال التشفير وفك التشفير encode() و decode() .




