예제 #1
0
파일: csvio.py 프로젝트: Squidl/eztables
 def __init__(self,
              stream,
              names=None,
              types=None,
              alltype=None,
              callback=None,
              **kwargs):
     self.f=stream
     self.data=None
     self.callback=callback
     if names is None:
         names=[]
         typed=None
         if types is None:
             types=[]
             typed=False
         cols=self.f.readline().rstrip("\n").split(",")
         for i in cols:
             name=i.strip()
             if not typed and "^" in name:
                 namesparts=name.split("^")
                 names.append(namesparts[0])
                 types.append(types_dict[namesparts[1]])
             elif not typed:
                 names.append(name)
                 types.append(None)
             else:
                 names.append(name)
         if alltype is not None:
             types=[alltype]*len(names)
     else:
         if types is None:
             types=[None]*len(names)
     self.tabledef=eztables.tabledef(names,types,[])
     self.spent=False
예제 #2
0
파일: arffio.py 프로젝트: Squidl/eztables
 def __init__(self,
              stream,
              callback=None,
              **kwargs):
     self.f=stream
     self.callback=callback
     names=[]
     types=[]
     while True:
         line=self.f.readline()
         line=line.strip()
         if len(line)<=0 or line[0]=='%':
             continue
         if line.upper()=="@DATA":
             break
         splits=line.split()
         if splits[0].upper()=="@ATTRIBUTE":
             names.append(splits[1])
             if splits[2].lower()=="numeric":
                 types.append(float)
             else:
                 types.append(None)
     self.tabledef=eztables.tabledef(names,types,[])
     self.spent=False