我的数据存储在哪里? Python智能

时间:2015-12-18 06:11:14

标签: python-2.7

我需要一些帮助来解释以下代码。

在书中,作者提供了一个advancedclassify.py脚本来读取python中的CSV文件

class matchrow:
   def __init__(self,row,allnum=False):
   if allnum:
      self.data=[float(row[i]) for i in range(len(row)-1)]
   else:
      self.data=row[0:len(row)-1]
   self.match=int(row[len(row)-1])

def loadmatch(f,allnum=False):
   rows=[]
   for line in file(f):
       rows.append(matchrow(line.split(','),allnum))
   return rows

如果现在我读了一个名为matchmake.csv的文件:

import advancedclassify
matchmaker = advancedclassify.loadmatch('matchmaker.csv')
print(matchmaker)

但是媒人没有存储我的数据。我不知道我的数据存储在哪里。

每行的csv文件都是这样的:

39,yes,no,skiing:knitting:dancing,220 W 42nd St New NY
43,no,yes,soccer:reading:scrabble,824 3rd Ave New York NY,0

我将非常感谢有人可以帮助我,因为我是python的新手,所以它很难受。感谢。

资料来源:编制集体智慧Ch9

1 个答案:

答案 0 :(得分:0)

使用here中的代码:

import advancedclassify
matchmaker = advancedclassify.loadmatch('matchmaker.csv')
print(matchmaker[:2])

打印:

[<advancedclassify.matchrow instance at 0x1005e3a28>, <advancedclassify.matchrow instance at 0x1005e33f8>]

因此matchmakermatchrow个实例的列表。这是你的数据。

实际数据存储在实例的match属性中。看看:

for match in matchmaker:
    print(match.data)