尝试从一个字典列表创建一个 Stock 实例列表,然后计算总成本: >>> import fileparse >>> with open('Data/portfolio.csv') as lines: ... portdicts = fileparse.parse_csv(lines, select= ['name','shares','price'], types=[str,int,float]) ... >>> portfolio = [ stock.Stock(d['name'], d['shares'], d['price']) for d in portdicts] >>> portfolio [<stock.Stock object at 0x10c9e2128>, <stock.Stock object at 0x10c9e2048>, <stock.Stock object at 0x10c9e2080>, <stock.Stock object at 0x10c9e25f8>, <stock.Stock object at 0x10c9e2630>, <stock.Stock object at 0x10ca6f748>, <stock.Stock object at 0x10ca6f7b8>] >>> sum([s.cost() for s in portfolio]) 44671.15
时间: 2024-04-28 16:22:01 浏览: 114
Python字符串、列表、元组、字典、集合的补充实例详解
这段代码是从一个 csv 文件中读取数据,然后使用 fileparse 模块解析数据,得到一个字典列表 portdicts。然后,使用列表推导式创建了一个 Stock 实例列表 portfolio,列表中每个元素都是 Stock 类的一个实例,实例的各个属性值从 portdicts 中获取。最后,计算了所有 Stock 实例的成本总和,即调用了每个实例的 cost() 方法,将结果累加得到总成本。
需要注意的是,这段代码中使用了 fileparse 模块和 stock 模块,这两个模块的具体实现并没有给出,如果需要完整的代码,需要查找或编写这两个模块的代码。同时,这里的数据文件名为 portfolio.csv,需要保证该文件存在,并且数据格式符合 parse_csv() 函数的要求。
阅读全文