类库存:
def init (自我,自动收报机): self.ticker =自动收报机 con = lite.connect(“.// stocks.db”) self.data = pd.read_sql(“SELECT * FROM daily,ticker ='”+ ticker +“'ORDER BY datum DESC LIMIT 100”,con,index_col =“datum”) con.close()
def数据(个体经营): print self.data
def ticker(self): return self.ticker
def datum(self): return self.data.index [0]
inv = stock("TSLA")
print inv.ticker
print inv.datum
给出了这个输出:
TSLA main.stock实例位于0x03E061C0>>
因此打印自动收报机字符串,但不是最后一个基准字段
答案 0 :(得分:0)
您的第一个错误之一是您没有关闭SQLite连接。
__init__
中的:
con.close() # instead of only con.close
您的另一个问题是pandas.read_sql()
会返回pandas.Dataframe
。查看文档后,pandas Dataframe没有方法datum
。
我还应该指出,你并没有调用很多功能;你只是在看他们是什么。您必须使用括号(inv.ticker()
)调用函数,该函数的参数位于括号内。