2017-09-02 57 views
-2

我有一個字符串a = '["Internet Software","IoT"]'。這不是一個列表。這是一個字符串長度爲27.字符串到字詞列表

我想將其轉換爲包含元素的列表:Internet軟件和物聯網。

我該怎麼做?

+0

如果它是一個字符串爲什麼你沒有把「或」圍繞它 – citizen2077

+2

你有沒有研究過這個?https://stackoverflow.com/q/1894269/3001761 – jonrsharpe

回答

0

使用eval()

a = '["Internet Software","IoT"]' 
lst = eval(a) 
print type(lst) 
# <type 'list'> 
+2

Noo ...從來沒有使用'eval(。 )'...... –

+0

似乎他的字符串包含有效的Python代碼,所以'eval()'應該做這件事,但我同意@WillemVanOnsem不會在未經驗證的字符串上使用它。 –

+2

曾聽說過'ast。 literal_eval'?這是一個安全的'eval',因爲它只適用於文字,所以它不會執行任意代碼。 –

0

你至少有2個選項:evaljson.loads

import json 

a = '["Internet Software","IoT"]' 
print(eval(a)) # ['Internet Software', 'IoT'] 
print(json.loads(a)) # ['Internet Software', 'IoT'] 

我會建議不要eval,因爲它可能執行惡意代碼。

json.loads另一方面,只有當你的字符串是有效的JSON(你發佈的字符串是真的)纔有效。

相關問題