0

'、'区切り文字の有無の両方を持つリストを区切るときに、ifステートメントをバイパスすることは可能ですか?'、'が存在する場合、このリストの各リストを以下のリストで区切りたいと思います。ただし、一部のリストには「、」がありません。

oldcode = [['a, b'], ['a'], ['a,b,c']]

oldcode_split = []

for code in oldcode:
    oc = code.split(',')
    oldcode_split.append(oc)
print oldcode_split

私はこの結果が欲しいです:

oldcode_split = [['a','b'], ['a'], ['a','b','c']]

ありがとう!

4

2 に答える 2

5

はい、可能です。簡単なリスト内包表記を使用してください。

In [63]: lis = [['a, b'], ['a'], ['a,b,c']]

In [64]: [x[0].split(',') for x in lis]
Out[64]: [['a', ' b'], ['a'], ['a', 'b', 'c']]

使用map()

In [66]: map(lambda x:x[0].split(','),lis)
Out[66]: [['a', ' b'], ['a'], ['a', 'b', 'c']]
于 2012-10-15T17:08:24.163 に答える
0
     python 3.2

    1. [("".join(i)).split(",")for i in oldcode]

    2. import re

     [re.split("\W+",str(i).strip())[1:-1]for i in o]

###私が結果を得るために使用した方法は、あまり良くありませんが。しかし、多様性は美しさです。

于 2012-11-08T17:05:00.770 に答える