在列表中使用字典时将字符串转换为浮点的问题

时间:2018-10-16 19:22:22

标签: python string list dictionary

我正在尝试获取以下代码以打印出csv文件中的所有行,但将每次打印中的列限制为键“名称”的值,并分别计算两个名为“过去12个月内度过”和“过去6个月内度过”。我想为每个人从12中减去6个月,然后将该值打印为“ collectionBalance”。我整天忙于“ for”循环,在如何计算和打印它们之前,如何正确转换与这两个键相关联的值一无所获。而且这两个值都被视为字符串,因此我也尝试将其删除引号。向我抛出的错误如下: 追溯(最近一次通话):   <模块>中第11行的文件“ customer_regex.py”     collectionsBalance = float(data [count] [“花费过去12个月”] .strip())-float(data [count] [“花费过去6个月”] .strip()) ValueError:无法将字符串转换为float:'$ 6030.52' 导入csv 汇入 数据= [] 计数= 0 使用open('customerData.csv')作为csvfile:   reader = csv.DictReader(csvfile)   对于阅读器中的行:     data.append(行)     collectionsBalance = float(data [count] [“花费过去12个月”] .strip())-float(data [count] [“花费过去6个月”] .strip())     打印(数据[计数] [“名称”] +集合余额)     计数=计数+ 1

1 个答案:

答案 0 :(得分:2)

尝试使用strip('$')删除美元符号,例如:

collectionsBalance = float(data[count]["Spent Past 12 Months"].strip('$')) - float(data[count]["Spent Past 6 Months"].strip('$'))