-1

私の割り当てでは、リストを2回分割する必要があります。「+」を使用して入力行からアドレス文字列を分割し、結果のリストの最後の部分を「、」で分割する必要があります。</ p>

in_file = open('yelp-short.txt')

def parse_line(text_file):
    a = text_file.strip('\n')
    b = a.split('+')
    c = b.split(',')
    print c

エラーが発生します:'list'オブジェクトには属性'split'がありません

これを行うために他にどのような方法を使用できますか?

4

3 に答える 3

1

ヒントは、結果のリストの最後の部分を分割することです。

したがって、最後の部分を引き出して分割する必要があります。

def parse_line(line):
    line = line.strip('\n')
    parts = line.split('+')
    addrs = parts[-1].split(',')
于 2013-03-05T05:19:51.947 に答える
0

私はrpartition

>>> 'a+b+c,d,e'.rpartition('+')[-1].split(',')
['c', 'd', 'e']

問題は、文字列ではなくリストを分割しようとしていることです。そのリストから特定のアイテムを取得する必要があります。

b = a.split('+')
c = b[-1].split(',')
于 2013-03-05T05:20:21.580 に答える
0

split文字列に適用すると、リストが作成されます。したがって、aは文字列、bはリストです。splitリストすることはできません。aとしましょう"X+Y,Z"bリストになります["X", "Y,Z"]。分割したいのは、リストの1番目(普通の人の2番目)の要素ですb- b[1].split(',')。このようにエラーはありません。と言うことで「最後」と言うこともできますb[-1]。同じ要素です。

于 2013-03-05T05:21:11.973 に答える