2016-02-27 3 views
0

Есть ли способ определить строку с акцентированными буквами в python? Ярким примером является этот:акцентированные буквы в Python

message = "ÂÃÄÀÁÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ" 

Ошибка:

SyntaxError: Non-UTF-8 code starting with '\xc2' 

ответ

3

Когда код сума содержит что-то еще, чем ASCII, вы должны добавить строку, чтобы указать t он питон переводчик:

#!/usr/bin/env python 
# encoding: utf-8 

Подробнее в PEP-0263 для точных правил, как включить подсказку кодирования в волшебном комментарии.

1

Если вы используете Python 3.x вы можете использовать ударением (Unicode) строки, не делая ничего особенного. Если вы используете Python 2.x, используйте u префикс для обозначения Unicode:

message = u"ÂÃÄÀÁÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ" 

Также не забудьте включить следующую строку в верхней части сценарий:

# coding=utf-8 

PEP-0263 объясняет это в Детальное описание:

To define a source code encoding, a magic comment must be placed into the source files either as first or second line in the file, such as:

# coding=<encoding name> 
+0

Благодарим за ответ, но ваш код не работает. возможно, это «кодирование», а не «кодирование»? – Woeitg

+0

PEP 0263 определяет его как «кодирование». Вы уверены, что сохранили файл в формате UTF-8? Что вы подразумеваете под «не работает»? – Selcuk

+0

Я имею в виду, что он дает ту же ошибку. другое soltotion с '# encoding: utf-8' works – Woeitg

Смежные вопросы