将readlines字符串转换为列表(Python)

时间:2014-10-23 16:36:49

标签: python

我试图取一个名单和分数列表,然后将它们格式化为字典,这样如果你打电话给这个名字就会得到分数。

每个名称和分数都在这样的文件的同一行:' Marni ________ 7.59 7.24 7.07 4.44 6.52 0.68 4.97 5.97'

我无法将每个字符串从行列表转换为自己的列表(这将是[' Marni',7.59,7.24等]。这就是我所拥有的远:

sampleDict = {}

def cleanData(initialList,finalList):  
    infile = open(initialList, 'r')
    outfile = open(finalList, 'w')
    lines = infile.readlines()
    for row in lines:
        row.split()
            sampleDict[row[0]] = row[1:]

infile.close()
outfile.close()

我想我可以弄清楚如何将这些项目分成单个列表后将这些项目实际添加到字典中,但我似乎无法弄清楚如何做到这一点。

谢谢!

1 个答案:

答案 0 :(得分:0)

首先需要将名称和下划线与字符串的其余部分分开。我将假设下划线在此示例中始终具有相同的长度。

之后,再次拆分数字并存储该返回值。

def cleanData(initialList,finalList):  
    infile = open(initialList, 'r')
    outfile = open(finalList, 'w')
    lines = infile.readlines()
    for row in lines:
        name, numbers = row.split("________")
        sampleDict[name] = numbers.split()

    # Code to sampleDict write to outfile