2017-08-08 1 views
0

、私はこのように、文字列をオンにしたいと思います:リストに一覧形式で文字列を変換する - のpython3でのpython 3

my_list = ['1', '2', '3', '4', '72'] 

:このように、リストに

my_str = "['1', '2', '3', '4', '72']" 

これを行う簡単な方法はありますか?

多くのありがとうございました。

+0

「1」の前に '' 'がありません。しかし、それを修正すれば 'ast.literal_eval'を使うことができます。 –

+0

'1の前に行方不明であっても、正規表現でリストを得ることができます:) –

答えて

6

使用ast.literal_eval

>>> import ast 
>>> my_str = "['1', '2', '3', '4', '72']" 
>>> ast.literal_eval(my_str) 
['1', '2', '3', '4', '72'] 

データが安全でない場合、それが失敗したので、これはeval()を使用するよりもはるかに安全なオプションです。

+0

ええ 'ast.literal_eval'も安全です。 – decadenza

-1

インポート

再my_strに= "[1' 、 '2'、 '3'、 '4'、 '72']"

re.compile(R '(\ D +) ').findall(my_strに)

[' 1' 、 '2'、 '3'、 '4'、 '72']

注:再使用する場合でも、所望の出力を得ることができあなたはそれを文字列に入れていませんでした。

関連する問題