• 0

كيف أُرمّز سكربت بايثون بـ utf-8؟

أحتاج إلى استخدام سلاسل نصية بترميز urf-8 في بايثون، حاولت استخدام طرق عديدة وكانت آخرها هذه، لكنها لم تفلح:

$ cat bla.py
u = unicode('d…')
s = u.encode('utf-8')
print s
$ python bla.py
  File "bla.py", line 1
SyntaxError: Non-ASCII character '\xe2' in file bla.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

 

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


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

الحل سهل لغاية فما عليك سوى أن تقوم بترميز سكربت بايثون utf-8 عن طريق إضافة سطر الترميز في بداية السكربت بعد مسار مفسر بايثون كتعليق كما يظهر في المثال التالي:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

وبعد ذلك يمكنك استخدام ترميز utf-8 في السلاسل النصية بدون مشاكل كما في المثال التالي:

u = 'idzie wąż wąską dróżką'
uu = u.decode('utf8')
s = uu.encode('cp1250')
print(s)

لا تنسى أن تتأكد من أن المحرر الذي تستخدمه يُرمّز شيفرتك المصدرية بـ utf-8 وإلا سوف تحصل على حروف غير مرئية لم يتم ترميزها كـ utf-8.

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


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

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

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

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


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

تسجيل الدخول

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


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