【发布时间】:2013-04-17 19:56:12
【问题描述】:
我认为这是一个相对简单的问题,但我是初学者并且遇到了麻烦。我必须将文本文件中的信息读入 python 中的两个列表。
这是一个文本文件的示例,名为“ratings.txt”,三列是movieId|numberofRatings|averageRatings。
1|452|3.9
2|131|3.2
3|90|3
4|209|3.6
...
...
1321|2|2.5
...
...
1685|0|-nan
1686|0|-nan
我需要将第二列和第三列数字读入两个单独的数组。第二列数字需要读入列表 numRatings。第三列需要读入列表avgRatings。文本文件从电影 1 到 1686
所以numRatings 必须是[452,131,90,....0,0]
avgRating 必须是 [3.9,3.2,3,....-nan,-nan]
我想我必须创建列表,然后创建循环来读取文本文件并将这些数字存储在数组中。
这是我目前的代码
f = open("ratings.txt") #opens the text file
line = f.readline() #reads in one line of the file
a = line.split("|") #splits the line of the file, for example line 1 looks like [1, 452, 3.9]
在上面的代码中,如果我打印a[0]、a[1] 和a[2],我分别得到1、452 和3.9。
如何一遍又一遍地执行此操作并将结果存储到数组中?
【问题讨论】:
标签: python list file-io split readline