我有一个python代码和一个json文件,我可以';不要将字符串更改为浮动

我有一个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

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 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”:“