2014-11-10 2 views
-3

Я пытаюсь удалить одинарные кавычки из словаря, но я получаю сообщение об ошибке, когда пытаюсь заменить их ничем. Например, я хочу {'Zone 1' : '2345', 'Zone 2' : '5678'} быть представлены как:Удаление одинарных кавычек из словаря

{'Zone 1' : 2345, 'Zone 2' : 5678} 
+0

Для начала, какой язык программирования это? – cybermonkey

+0

Нам нужен гораздо больше контекста, чем вы поставили. На каком языке находится словарь? Какая среда разработки у вас есть? Какие инструменты доступны для трансформации? –

+0

Судя по вашему другому вопросу, это [тег: python]. – cybermonkey

ответ

1

Если вы уверены, что значения будут все целые и безопасно бросить, вы можете сделать что-то просто:

>>> for key, val in d.items(): 
... d[key] = int(val) 
... 
>>> d 
{'Zone 2': 5678, 'Zone 1': 2345} 

Примечания что использование .items() работает как в Python2, так и в Python3, .iteritems() - только python2, irrc. Производительность wise, .items() в Python2 вернет копию (присущие ей неэффективность) и .iteritems немного лучше, но в Python3 .items возвращает view.

3

Простой дикт постижения.

d = {'Zone 1':'2345', 'Zone 2':'5678'} 
d = {k:int(v) for k, v in d.iteritems()} 
+0

Незначительная коррекция, это «понимание», а не «сжатие» (это слишком мало для редактирования). – nerdwaller

+0

О да, рано утром здесь пропустил это. Так или иначе, я всегда неправильно истолковываю это. –

Смежные вопросы