• 0

كيف أُحوّل سلسلة نصيّة من نوع Unicode إلى سلسلة نصيّة عاديّة في بايثون؟

كيف أُحول سلسلة نصية من نوع Unicode بها رموز خاصة مثل $ و £ وغيرها... إلى سلسلة نصية عادية في البايثون؟ فهل هنالك دالة خاصة تقوم بهذه المهمة؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هنالك طرق متنوعة لتحويل  سلسلة نصية من نوع Unicode إلى سلسلة نصية عادية لكنك ستواجه بعض المشاكل البسيطة بسبب الرموز الخاصة.
يمكنك تحويل سلسلة  Unicode إلى ASCII (إذا كنت لا تحتاج إلى ترجمة الحروف التي ليست من نوع ASCII بطريقتين) الأولى عن طريق تجاهل الحروف non-ASCII (ليست من نوع ASCII) والثانية عن طريق استبدالها بعلامة استفهام كما في الأمثلة التالية:

>>> a=u"aaaàçççñññ"
>>> type(a)
<type 'unicode'>
>>> a.encode('ascii','ignore')
'aaa'
>>> a.encode('ascii','replace')
'aaa???????'
>>>

كما يمكنك تحويل السلسلة النصية إلى ترميزات أخرى مثل utf8 أو utf16 كما في الأمثلة التالية:

>>> s= u'£10'
>>> s.encode('utf8')
'\xc2\x9c10'
>>> s.encode('utf16')
'\xff\xfe\x9c\x001\x000\x00'

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن