Я получаю следующий объект из ответа 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, как указано выше.
Код работает, но я, очевидно, пропустил здесь что-то очень простое. Мой код слишком уродлив... помогает. ТИА.
Используйте temp = int(max_value[0]['values'][0])
.
Нет лучшего варианта.
Если у вас есть одно значение:
intValue = int(max_value[0]['values'][0])
print(intValue)
Если у вас несколько значений:
for values in max_value:
intValue = int(values['values'][0])
print(intValue)
Код в комментарии @Aran-Fey 'является лучшим решением здесь
Но вот еще один вариант:
max_value = [{u'values': [u'1647']}]
print(int(list(dict(*max_value).values())[0][0]))
Выход:
1647
Попробуй это:
max_value = [{u'values': [u'1647']}]
for i in max_value:
print(int(i[u"values"][0])) #or print(int(i["values"][0]))
print(int(i[u"values"][0]))