导致错误的行是
totalR = totalR + (float(string.replace(contri[0][5],",","")) + float(string.replace(contri[0][6],",","")))
contri [0] [5]和[6]是包含格式为1,000.00的数字的字符串。我将字符串转换为浮点数之前删除逗号,以便将它们添加到totalR,这是一个浮点数。 (创建为totalR = 0.0)我也尝试使用Decimal,但错误也发生在那里。我做了“导入字符串”。该程序失败并出现错误:
File "mine.py", line 43, in fillDonorData
totalR = totalR + (float(string.replace(contri[0][5],",","")) + float(string.replace(contri[0][6],",","")))
AttributeError: 'module' object has no attribute 'replace'
答案 0 :(得分:10)
string
模块中的方法已被弃用多年。您应该直接在字符串上致电replace
,或contri[6]
。
答案 1 :(得分:3)
现在在Python 3上str.replace
。
看起来重命名了同样的东西,具有相同的签名和具有相同含义的文档字符串。
答案 2 :(得分:0)
如果您对模块进行了更改,只需退出python shell并再次输入并再次导入模块