Tag: unicode

строка хеширования unicode в python

Я пытаюсь использовать некоторые строки unicode: hashlib.sha1(s).hexdigest() UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-81: ordinal not in range(128) где s – что-то вроде: œΣ¡ ™ £ ¢ ∞§¶ • ªº- ≠ œΣ'® † ¥ ¨øπ « 'åß∂ƒ © ˙Δ˚¬ … æΩ≈ç√∫~μ≤≥ ÷ åйцукенгшщзхъфывапролджэячсмитьбююю..юбьтијџўќ † њѓѕ'» «« «« \ dzћ ÷ … • Δљl […]

Правильно извлеките Emojis из строки Unicode

Я работаю в Python 2, и у меня есть строка, содержащая emojis, а также другие символы Unicode. Мне нужно преобразовать его в список, где каждая запись в списке является единственным символом / emoji. x = u'😘😘xyz😊😊' char_list = [c for c in x] Желаемый результат: ['😘', '😘', 'x', 'y', 'z', '😊', '😊'] Фактический результат: [u'\ud83d', […]

python 2.7 нижний регистр

Когда я использую .lower() в Python 2.7, строка не преобразуется в нижний регистр для букв ŠČŽ . Я читаю данные из словаря. Я попытался использовать str(tt["code"]).lower() , tt["code"].lower() . Какие-либо предложения ?

CSV, DictWriter, unicode и utf-8

У меня возникают проблемы с символами DictWriter и non-ascii. Краткая версия моей проблемы: #!/usr/bin/env python # -*- coding: utf-8 -*- import codecs import csv f = codecs.open("test.csv", 'w', 'utf-8') writer = csv.DictWriter(f, ['field1'], delimiter='\t') writer.writerow({'field1':u'å'.encode('utf-8')}) f.close() Дает этот ответ: Traceback (most recent call last): File "test.py", line 10, in <module>writer.writerow({'field1':u'å'.encode('utf-8')}) File "/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/csv.py", line 124, in […]

Запись строки utf-8 внутри моих файлов python

Эта строка в моем .py-файле дает мне: «UnicodeDecodeError:« utf8 »кодек не может декодировать байты в позиции 8-13: неподдерживаемый код кода Unicode" if line.startswith(u"Fußnote"): Файл сохраняется в utf-8 и имеет кодировку вверху: # – – кодирование: utf-8 – – У меня есть много других файлов с файлами utf-8 в китайском тексте в комментариях и в массивах, […]

Unicode-символ не находится в диапазоне при вызове locale.strxfrm

Я испытываю странное поведение при использовании библиотеки locale с входом unicode. Ниже приведен минимальный рабочий пример: >>> x = '\U0010fefd' >>> ord(x) 1113853 >>> ord('\U0010fefd') == 0X10fefd True >>> ord(x) <= 0X10ffff True >>> import locale >>> locale.strxfrm(x) '\U0010fefd' >>> locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') 'en_US.UTF-8' >>> locale.strxfrm(x) Traceback (most recent call last): File "<stdin>", line 1, in […]

Как декодировать JSON для str, а не unicode в Python (2.6)?

У меня есть файл конфигурации в JSON, который содержит несколько переменных в виде строк (всегда ascii). Эти строки декодируются в unicode по умолчанию, но поскольку я должен передавать эти переменные на мои расширения Python C, мне нужны они как обычные строки Python. На данный момент я использую str(unicode) для преобразования строк JSON, но более элегантное […]

Усечение строки до байтовой длины в Python

У меня есть функция здесь, чтобы усечь заданную строку до заданной длины байта: LENGTH_BY_PREFIX = [ (0xC0, 2), # first byte mask, total codepoint length (0xE0, 3), (0xF0, 4), (0xF8, 5), (0xFC, 6), ] def codepoint_length(first_byte): if first_byte < 128: return 1 # ASCII for mask, length in LENGTH_BY_PREFIX: if first_byte & mask == mask: […]

Получить «фактическую» длину строки в символах Юникода

например, такие символы, как « ✮ » ( \xe2\x9c\xae ), могут быть другими \xe2\x9c\xae « Σ », « д » или « Λ »). Я хочу найти «фактическую» длину, которую принимает символ при печати на экране например len("✮") len("\xe2\x9c\xae") оба возвращают 3, но это должно быть 1

Усечение юникода, чтобы он соответствовал максимальному размеру при кодировании для переноса

Учитывая строку Unicode и эти требования: Строка кодируется в некоторый формат последовательности байтов (например, UTF-8 или JSON unicode escape) Закодированная строка имеет максимальную длину Например, для службы push push требуется JSON-кодирование с максимальным общим размером пакета 256 байтов. Каков наилучший способ усечения строки, чтобы она перекодировала в действительный Unicode и что она отображается правильно? (Понимание […]

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