Tag: unicode

Python в чем разница между str (u'a ') и u'a'.encode (' utf-8 ')

Как заголовок, есть ли причина не использовать str () для передачи строки unicode на str? >>> str(u'a') 'a' >>> str(u'a').__class__ <type 'str'> >>> u'a'.encode('utf-8') 'a' >>> u'a'.encode('utf-8').__class__ <type 'str'> >>> u'a'.encode().__class__ <type 'str'> UPDATE: спасибо за ответ, также не знаю, создаю ли я строку с помощью специального символа, она автоматически преобразуется в utf-8 >>> a […]

UnicodeDecodeError в Python 3 при импорте файла CSV

Я пытаюсь импортировать CSV, используя этот код: import csv import sys def load_csv(filename): # Open file for reading file = open(filename, 'r') # Read in file return csv.reader(file, delimiter=',', quotechar='\n') def main(argv): csv_file = load_csv("myfile.csv") for item in csv_file: print(item) if __name__ == "__main__": main(sys.argv[1:]) Вот пример моего файла csv: foo,bar,test,1,2 this,wont,work,because,α И ошибка: Traceback […]

Скомпилировать синтаксическую ошибку: не ASCII-буквы в строке

У меня есть файл python, содержащий длинную строку HTML. Когда я компилирую и запускаю этот файл / скрипт, я получаю эту ошибку: _SyntaxError: Non-ASCII character '\x92' in file C:\Users…\GlobalVars.py on line 2509, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details_ Я следовал инструкциям и пошел к предложенному URL. Но что-то вроде этого в верхней части […]

Нормализация юникода на Python: правильно ли перевести u '\ xb4' на u '\ u0301'

посмотрите следующий фрагмент: >>> import unicodedata >>> from unicodedata import normalize, name >>> normalize('NFKD', u'\xb4') u' \u0301' >>> normalize('NFKD', u'a\xb4a') u'a \u0301a' >>> normalize('NFKC', u'a\xb4a') u'a \u0301a' >>> name(u'\xb4'), name(u'\u0301') ('ACUTE ACCENT', 'COMBINING ACUTE ACCENT') Я пытаюсь понять, правильно ли поведение для перевода u'\xb4' на u' \u0301' . Почему он сочетает в себе острый акцент […]

Проблема Unicode с SQLAlchemy

Я знаю, что у меня проблема с преобразованием из Юникода, но я не уверен, где это происходит. Я извлекаю данные о недавней поездке Eruopean из каталога файлов HTML. Некоторые имена местоположений имеют символы, отличные от ASCII (например, é, ô, ü). Я получаю данные из строкового представления файла с помощью regex. Если я напечатаю местоположения по […]

как разбить строку unicode на список

У меня есть следующий код: stru = "۰۱۲۳۴۵۶۷۸۹" strlist = stru.decode("utf-8").split() print strlist[0] мой результат: ۰۱۲۳۴۵۶۷۸۹ Но когда я использую: print strlist[1] Я получаю следующую traceback : IndexError: list index out of range Мой вопрос : как я могу split мою string ? Конечно, помните, что я получаю свою string от function , считая ее […]

String В python с моим юникодом?

Python 3.2 (r32:88445, Feb 20 2011, 21:29:02) [MSC v.1500 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> str_version = 'នយោបាយ' >>> type(str_version) <class 'str'> >>> print (str_version) នយោបាយ >>> unicode_version = 'នយោបាយ'.decode('utf-8') Traceback (most recent call last): File "<pyshell#3>", line 1, in <module> unicode_version = 'នយោបាយ'.decode('utf-8') AttributeError: 'str' object […]

json.loads () возвращает объект unicode вместо словаря

Я читаю json из файла на удаленном сервере с использованием тэга: from StringIO import StringIO output = StringIO() get(file_name, output) output = output.getvalue() Значение output теперь: '"{\\n \\"status\\": \\"failed\\", \\n \\"reason\\": \\"Record already exists.\\"\\n}"' Когда я пытаюсь проанализировать эту строку в словаре с помощью json.loads(output) он возвращает объект unicode u'{\n "status": "failed", \n "reason": "Record […]

Центральный способ фильтрации недопустимых символов unicode в lxml?

Общеизвестно, что некоторые диапазоны символов не разрешены в документах XML. Я знаю решения для фильтрации этих символов (например, [1] , [2] ). Следуя принципу «Не повторяй себя», я бы предпочел реализовать одно из этих решений в одном центральном пункте – прямо сейчас я должен дезинфицировать любой потенциально опасный текст, прежде чем он будет lxml в […]

Разница Python между print obj и print obj .__ str __ ()

Мне было дано понять, что вызов print obj вызовет obj.__str__() который, в свою очередь, вернет строку для печати на консоль. Теперь я столкнулся с проблемой с Unicode, где я не мог напечатать никаких символов, отличных от ascii. Я получил типичный материал «ascii вне диапазона». При экспериментировании работали: print obj.__str__() print obj.__repr__() Поскольку обе функции выполняют […]

Python - лучший язык программирования в мире.