Создайте целое число из dict внутри списка. Питон новичок

1

Я получаю следующий объект из ответа API Google Analytics (упрощенного), который, как представляется, является списком с dict внутри него:

max_value = [{u'values': [u'1647']}]

Я просто хочу извлечь [u'1647 '] в качестве автономного целочисленного объекта, но я исказил себя в этом очень уродливом коде Python для этого:

for i in max_value:
    temp = int(i['values'].pop(0))
    print temp
    print isinstance(temp, int)

Урожайность:

1647
TRUE

Я искал какое-то время, и все, что я вижу, это возможность превратить список строк в список целых чисел. Мне не нужен результирующий список. Я хочу один объект var, как указано выше.

Код работает, но я, очевидно, пропустил здесь что-то очень простое. Мой код слишком уродлив... помогает. ТИА.

Теги:

4 ответа

2
Лучший ответ

Используйте temp = int(max_value[0]['values'][0]).

Нет лучшего варианта.

0

Если у вас есть одно значение:

intValue = int(max_value[0]['values'][0])
print(intValue)

Если у вас несколько значений:

for values in max_value:
  intValue = int(values['values'][0])
  print(intValue)
0

Код в комментарии @Aran-Fey 'является лучшим решением здесь

Но вот еще один вариант:

max_value = [{u'values': [u'1647']}]
print(int(list(dict(*max_value).values())[0][0]))

Выход:

1647
0

Попробуй это:

max_value = [{u'values': [u'1647']}]
for i in max_value:
    print(int(i[u"values"][0])) #or  print(int(i["values"][0]))
  • 1
    Вы пропустили последнюю скобку. Должно быть print(int(i[u"values"][0]))
  • 0
    Ой, опечатка! обновлен!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню