Tag: unicode

Python удаляет лишние символы Unicode

Я работаю с некоторым текстом в python, он уже находится в формате unicode внутри, но я хотел бы избавиться от некоторых специальных символов и заменить их более стандартными версиями. У меня в настоящее время есть строка, которая выглядит так, но она становится все более сложной, и я вижу, что это в конечном итоге принесет больше […]

Unsuppress UnicodeEncodeError исключения при запуске из Aptana Studio PyDev

Ниже приведен оператор, который должен вызвать исключение UnicodeEncodeError : print 'str+{}'.format(u'unicode:\u2019') В оболочке Python исключение создается как ожидалось: >>> print 'str+{}'.format(u'unicode:\u2019') Traceback (most recent call last): File "<pyshell#10>", line 1, in <module> print 'str+{}'.format(u'unicode:\u2019') UnicodeEncodeError: 'ascii' codec can't encode character u'\u2019' in position 8: ordinal not in range(128) Однако, если я поместил эту строку в […]

UnicodeDecodeError при использовании результата socket.gethostname ()

Некоторые из моих пользователей сообщают, что следующий код может поднять UnicodeDecodeError, когда имя хоста содержит символы, отличные от ascii (однако я не смог реплицировать это на моей машине с Windows Vista): self.path = path self.lock_file = os.path.abspath(path) + ".lock" self.hostname = socket.gethostname() self.pid = os.getpid() dirname = os.path.dirname(self.lock_file) self.unique_name = os.path.join(dirname, "%s.%s" % (self.hostname, self.pid)) […]

Как исправить одну строку юникода, например «\ u8bf8 \ u845b \ u4eae» в python?

Я не знаю, как они печатали строки, такие как «\ u8bf8 \ u845b \ u4eae» в файлы журнала. Но теперь мне нужно получить правильную строку, это «诸葛亮» на китайском языке. Я пробовал много способов, но не смог. In [56]: print u"\u8bf8\u845b\u4eae" 诸葛亮 In [57]: print "\u8bf8\u845b\u4eae" \u8bf8\u845b\u4eae In [58]: "\u8bf8\u845b\u4eae".decode('utf-8') Out[58]: u'\\u8bf8\\u845b\\u4eae' In [64]: eval("\u8bf8\u845b\u4eae") […]

regex: заменить дефисы на en-dashes с re.sub

Я использую небольшую функцию для перебора файлов, чтобы любые дефисы заменялись en-dashes – (alt + 0150). Функция, которую я использую, добавляет некоторый аромат регулярного выражения к решению в связанной с этим проблеме ( как заменить символ INSIDE для текстового содержимого многих файлов автоматически? ) def mychanger(fileName): with open(fileName,'r') as file: str = file.read() str = […]

Как заставить Python bs4 корректно работать с XML?

Я пытаюсь использовать Python и BeautifulSoup 4 (bs4) для преобразования Inkscape SVG в XML-подобный формат для некоторых проприетарных программ. Кажется, я не могу заставить bs4 правильно разобрать минимальный пример. Мне нужен парсер, чтобы уважать самозакрывающиеся теги, обрабатывать unicode и не добавлять html-файлы. Я думал, что нужно указать парсер «lxml» с selfClosingTags, но это не так! […]

Scrapy xpath utf-8 литералы

Мне нужно проверить скребковые поля, содержащие символы не-ascii. Когда я включаю литерал utf-8 в паука, я получаю эту ошибку: ValueError: все строки должны быть совместимы с XML: Unicode или ASCII, без NULL-байтов или управляющих символов Вот пример, который вызывает ошибку # -*- coding: utf-8 -*- import scrapy class DummySpider(scrapy.Spider): name = 'dummy' start_urls = ['http://www.google.com'] […]

Python – Map / Reduce – Как читать конкретное поле JSON при использовании примера count count count

Я следую примеру DISCO для подсчета слов из файла: Подсчет слов как карта / сокращение работы У меня нет проблем с этим, но я хочу попробовать прочитать в определенном поле из текстового файла, содержащего строки JSON. Файл имеет такие строки, как: {"favorited": false, "in_reply_to_user_id": 306846931, "contributors": null, "truncated": false, "text": "@CataDuarte8 No! av\u00edseme cuando vaya […]

Python 2.7 Unicode Dict

Мне интересно, как я могу кодировать Dicts в Python 2.7. Когда я делаю следующее: # coding=ISO-8859-1 Programmer = {'v': ["1","2x","3","4","5"]} Programmer.update({'x': ["1","2x","3","4","5"]}) Programmer.update({'y': ["1","2x","3","4","5"]}) Programmer.update({'z': ["1","2x","3","4","5"]}) Programmer.update({'æ': ["1","2x","3","4","5"]}) Programmer.update({'ø': ["1","2x","3","4","5"]}) Programmer.update({'å': ["1","2x","3","4","5"]}) print Programmer Я получил: {'v': ['1', '2x', '3', '4', '5'], '\xe5': ['1', '2x', '3', '4', '5'], '\xf8': ['1', '2x', '3', '4', '5'], '\xe6': […]

класс unicode в Python

help(unicode) печатает что-то вроде: class unicode(basestring) | unicode(string [, encoding[, errors]]) -> object … но вы можете использовать что-то отличное от basestring как аргумента, вы можете сделать unicode (1) и получить u'1 '. Что происходит в этом звонке? int не имеет метода __unicode__.

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