我有一个python代码和一个json文件,我可以';不要将字符串更改为浮动
Python代码:我有一个python代码和一个json文件,我可以';不要将字符串更改为浮动,python,Python,Python代码: import json bankstatementjson = open('bankstatement_sept_20.json', 'r') bankstatement = bankstatementjson.read() bankstm = json.loads(bankstatement) for x in bankstm: konto_ut = (x["FIELD7"]) print(float(konto_ut)) for
import json
bankstatementjson = open('bankstatement_sept_20.json', 'r')
bankstatement = bankstatementjson.read()
bankstm = json.loads(bankstatement)
for x in bankstm:
konto_ut = (x["FIELD7"])
print(float(konto_ut))
for i in bankstm:
konto_inn = (i["FIELD8"])
print(float(konto_inn))
Json数据
{
"FIELD1": "2020-09-01",
"FIELD2": "2020-09-02",
"FIELD3": "50001685147",
"UTGÅENDE SALDO": "NO1300000000000",
"9759,52": "Visa",
"FIELD6": "*9808 31.08 Nok 22.00 Extra Bislett Kurs: 1.0000",
"FIELD7": "22,00",
"FIELD8": ""
},
错误:
ValueError: could not convert string to float: ''
对于带有逗号的,应将其更改为
,这是Python中小数点的标准:
konto_ut=x[“FIELD7”]。替换(“,”,“)
打印(浮动(konto_ut))#22.0
对于空字符串,可以在打印为浮点之前检查其是否为空:
konto_inn=i[“FIELD8”]
打印(浮动(konto_inn)如果(konto_inn!=“”)否则0)#0
另一种选择是捕获异常,这将避免浮点转换的其他潜在问题:
def是_编号:
尝试:
浮球
返回真值
除值错误外:
返回错误
konto_inn=i[“FIELD8”]
如果(是科托努酒店的号码):
印刷品(浮标(konto_inn))
其他:
打印(“不是数字”)
这将有助于回答您的问题吗?@deadshot您为什么不将其作为副本?听起来像是一个副本…使您的程序能够抵抗错误输入。异常使用try+catch,在internet上查找示例,并学习在您的类与其他人交流的任何地方使用它们。最好检查isnumeric()
替换后,将其转换为“FIELD7”:“22,00”
我认为这是一个打字错误。OP在“FIELD8”:“