1

これは質問に対する私のコードです。2行の情報を含むCSVファイルがありますが、データを分割すると、すべての行の最後に/nが表示されるため、関数にストリップがあるのはなぜですか. しかし、私は関数を適切に使用する方法がわかりません。プロがこの関数を修正するのを手伝ってくれることを願っています。また、どういうわけか、何をすべきかわからないタプルに変換する必要があります。

def load_friends(filename):
    v = []
    with open(filename, 'Ur') as f:
        for line in f:
            line = line.strip()
            line = line.split(',')
            line.append(tuple)
    return v
    f.close
4

3 に答える 3

2

車輪を再発明するのではなく、標準csvライブラリを使用してください:

import csv

def load_friends(filename):
    with open(filename, 'Ur') as f:
        v = [tuple(rec) for rec in csv.reader(f, delimiter=',')]
    return v
于 2013-04-09T10:49:11.737 に答える
1

私はこれがあなたが望むものだと信じています。csvこれはコードを簡略化したものですが、ライブラリはこのために構築されているため、@eumiro によるソリューションを使用してください。

def load_friends(filename):
    with open(filename, 'rU') as f:
        return [tuple(line.strip().split(',')) for line in f]
于 2013-04-09T10:45:08.700 に答える
0
def load_friends(filename):
    v = []
    with open(filename, 'Ur') as f:
        for line in f:
            line = line.strip()
            line = line.split(',')
            line = tuple(line)
            v.append(line)
    return v

タプルに変換して を追加する必要があります+line.append(tuple)意味はありません。リストにデータ型を追加するだけlineです。

あるいは、

def load_friends(filename):
    with open(filename, 'rU') as f:
        return [tuple(line.strip().split(',')) for line in f]
于 2013-04-09T10:45:40.837 に答える