gpt4 book ai didi

python - 值错误 : could not convert string to float in dictionary

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:54 25 4
gpt4 key购买 nike

我正在将一个长的每周值字典转换为每月值。

这是字典的一个小样本:

weeklydic={'2007-10-21': '56', '2007-10-28': '58', '2011-07-10': '56', '2011-07-16': '56'}

我正在使用此代码对同月的每周值求和:

monthlydic = {}

for key in weeklydic:
k = key[0:7]
if (k in weeklydic):
monthlydic[k] += float(weeklydic[key])
else:
monthlydic[k] = float(weeklydic[key])

总的来说它工作正常,在这个小样本中它应该返回

monthlydic={'2007-10': '114', '2011-07': '112'}

但是在一本字典中显然有一个我无法转换为 float 的值,所以我收到了这个非常烦人的消息:

ValueError: could not convert string to float

我的问题是:

a) 有没有一种方法可以让我跟踪字典中的错误项目以更好地理解正在发生的事情?

b) 有没有一种方法可以将“if 语句”转换为“try 语句”,使其能够通过任何错误?

最佳答案

weekly_string = weeklydic[key]
try:
weekly_float = float(weekly_string)
except ValueError as e:
print('error={error}, key={key}, value="{value}"'.format(
error=e, key=key, value=weekly_string))
weekly_float = 0.0

你之前只需要做一次,而不是你的 if: else:

的两个分支

关于python - 值错误 : could not convert string to float in dictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33988584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com