0
class Portfolio:
def read(self, pathfilename):
.... stuff ....
self.portfolio[comp_symbol] = {'name': comp_name , 'holdings': comp_holdings}
def save_portfolio(self, port_collection):
port_collection.insert(self.portfolio)
def list_tickers(self):
return (self.portfolio.keys())
def __init__(self):
self.portfolio = {}
self.id = None
下面是如何称呼它:MongoDB的对象ID被添加到类属性字典,在python
port = Portfolio()
print "==================================================================================="
print port.id
print port.portfolio
print "==================================================================================="
port.read(portfolio_file)
print port.id
print port.portfolio
print port.portfolio.keys()
print "==================================================================================="
print port.list_tickers()
port.save_portfolio(port_collection)
print port.list_tickers()
print port.portfolio
的问题是,在与pymongo执行插入,财产被称为投资组合的变化,并有一个额外的密钥添加。例如:print port.list_tickers()
在插入过程之前和之后是不同的,我不明白为什么会这样。在插入之前,我得到['CSCO', 'RSA', 'ARO']
,插入后,我得到:['CSCO', 'RSA', '_id', 'ARO']
,但我仍然应该阅读相同的类属性。额外的_id
显然是来自MongoDB的ID。