2015-07-27 4 views
0

У меня возникли проблемы с использованием списка, который представлен в unicode. Я попытался рассмотреть другие вопросы, и функция json.dumps() показывает u'string ', но это не относится ко мне. Я не могу перебирать список, потому что python видит все это как строку и дает мне отдельные символы. Вот какой код.Юникод в истребимый список

print flist 
print type(flist) 

['a', 'b', 'c'] 
<type 'unicode'> 

myjson = json.dumps(flist) 
print myjson 
print type(myjson) 

"['a', 'b', 'c']" 
<type 'str'> 

Не так ли? :

[u'a', u'b', u'c'] 
+0

насчет 'json.loads()' вместо 'json.dumps()'? – alecxe

+0

Как вы описали 'flist'? – MattDMo

+0

json.loads() возвращает его обратно в как flist. flist - это объект, который я вручную набрал ['a', 'b', 'c'] в базу данных django. – hokatvcu

ответ

1

Try ast.literal_eval

import ast 
ast.literal_eval(flist.decode()) 
+0

['a', 'b', 'c'] ... nope – hokatvcu

+0

Попробуйте без json.dumps, вам может понадобиться использовать .decode() в строке, а затем перед использованием ast.literal_eval() –

+0

работает! не нужно json.dumps() .. kudos! – hokatvcu