Работа с ключами unicode в словаре python

Я изучаю API Twitter с помощью Python 2.7.x. Я сохранил ряд случайных твитов, и я пытаюсь их обработать. Каждый твит преобразуется в словарь с json.loads, и все словари являются частью списка.

Учитывая один твит, я хочу иметь возможность извлекать определенные поля из словаря. Клавиши – это все строки в Юникоде. Если я перебираю ключи в цикле, у меня нет проблем с печатью значений:

for i in tweet.keys(): print i, tweet[i] 

Таким образом, цикл выше работает отлично, но мне не удавалось выяснить, как вручную указать ключ. «u'text» – это ключ для фактического содержимого твита (фактический пост пользователя). Если я попытаюсь напечатать твит ['text'], я получу KeyError. Я наивно пробовал твит [u'text '], но это тоже не с KeyError.

Я думаю, мне интересно узнать, что делает цикл, когда он проходит через tweet.keys () по сравнению с тем, что я делаю, когда вручную указываю ключ. Обратите внимание: если я напечатаю значение i в цикле выше, будет напечатано имя ключа, но без юникодной упаковки. Когда ключ является «u'text», значение i является «текстом», или, по крайней мере, это то, что печатается на терминале.

One Solution collect form web for “Работа с ключами unicode в словаре python”

Python 2 выполняет трансляцию между str и unicode ключами прозрачно для вас, если текст может быть закодирован в ASCII:

 >>> d = {u'text': u'Foo'} >>> d.keys() [u'text'] >>> 'text' in d True >>> u'text' in d True >>> d['text'] u'Foo' >>> d[u'text'] u'Foo' 

Это означает, что если вы получите KeyError для tweet['text'] , то этот словарь не имеет такого ключа .

  • Граница Word для использования в тексте юникода для регулярного выражения Python
  • Печать Юникода в консоли eclipse Pydev и в режиме ожидания
  • Будет ли все в стандартной библиотеке обрабатывать строки как unicode в Python 3.0?
  • Почему я получаю ошибку кодирования ASCII с данными Unicode в Python 2.4, но не в 2,7?
  • Python: обрабатывать сломанные байты unicode при разборе строки JSON
  • удалить unicode emoji с помощью re в python
  • Быстрый способ фильтрации незаконных символов xml unicode в python?
  • Юникод в ноутбуке ipython
  •  
    Interesting Posts for Van-Lav

    Django: отображение значений выбранного поля множественного выбора в шаблоне

    распечатать результат, как только пользовательский ввод «сделан»,

    Отладка Post-Mortem в Python позволяет шагать или продолжать?

    Как я могу заставить unitest Python не перехватывать исключения?

    Сортировка текстового файла по первому столбцу и повторение счетчика python

    Как очистить веб-сайт, который сначала требует входа с Python

    Python Selenium – AttributeError: объект WebElement не имеет атрибута sendKeys

    Что означают символы% 7D в запросе url?

    Ошибка Nuitka Невозможно найти «в пакете» как абсолютный импорт

    Любой активный вред в `if False в `

    Пример шаблона Python Social Auth Django

    Использование np.savetxt и np.loadtxt с многомерными массивами

    Используя PIL для вставки изображения в оттенках серого в изображение RGB, вставив значения оттенков серого в кортеж RGB

    Как связать движок, когда я хочу, при использовании declarative_base в SQLAlchemy?

    Преобразование строки с UTC-смещением в объект datetime

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