2014-08-29 34 views
1

我試着到香港專業教育學院存儲在MySQL數據庫中(作爲一個字符串)數組轉換爲標準排列在python我的意思的例子是:如何陣列字符串轉換成數組在Python

這就是我從數據庫中獲取:

"['a',['b','c','d'],'e']" # this is a string in the format of an array that holds strings inside it. 

我需要的,這樣它的行爲就像一個正常的陣列 任何幫助將不勝感激從字符串中刪除的陣列。我不確定這是否已在其他地方得到解答,對不起,如果我找不到它。 感謝

回答

4

您可以使用ast.literal_eval

>>> from ast import literal_eval 
>>> s = "['a',['b','c','d'],'e']" 
>>> print(literal_eval(s)) 
['a', ['b', 'c', 'd'], 'e'] 
+1

,而這肯定是正確的(+1)......他可能要考慮改變自己在DB存儲爲JSON或什麼 – 2014-08-29 16:22:55

+0

@JoranBeasley格式你知道我怎麼會使用Python來存儲數據庫中的json – Riley 2014-08-29 16:27:57

+0

@ RileyThe15YearOld'json.dumps()'將把你的數組變成一個JSON字符串,'json.loads()'將它變回Python數組。 – TheSoundDefense 2014-08-29 16:32:08

0

如果你能把這些單引號轉換爲雙引號,你可以使用JSON解析。

import json 
obj1 = json.loads('["a", ["b", "c", "d"], "e"]')