1

私はこの形式の文字列を持っています:any_string = "[u'02', u'03', u'04', u'05']"。これから次のようなリストを抽出したいnew_list = ['02', '03', '04', '05']

're'を使用しています。この作業を行うために私が書いている以下のコードですが、運がありません

import re

new_list = re.findall(r'["w "]', any_string)

私は次のように結果を得ています[' ', ' ', ' ']

基本的に私はこのようなリストが欲しいnew_list = ['02', '03', '04', '05']ので、私は次のような個々のアイテムをループすることができます02, 03, 04 , 05

4

2 に答える 2

8

に縛られていない場合はreどうastですか?あと一文字だけ:)

In [1]: import ast

In [2]: any_string = "[u'02', u'03', u'04', u'05']"

In [3]: my_list = ast.literal_eval(any_string)

In [4]: type(my_list)
Out[4]: <type 'list'>

In [5]: my_list
Out[5]: [u'02', u'03', u'04', u'05']

In [6]: for item in my_list:
   ...:     print item
   ...:
   ...:
02
03
04
05
于 2012-11-23T06:08:44.447 に答える
3

この文字列をどこから取得しているのか疑問に思います。str()またはを通過したリストのように見えますrepr()。リストを文字列にシリアライズする必要がある場合は、JSON またはpickleを使用します。

于 2012-11-23T06:07:21.950 に答える