我正在把一本很长的每周值字典转换成每月值。在
以下是dict的一个小样本:
weeklydic={'2007-10-21': '56', '2007-10-28': '58', '2011-07-10': '56', '2011-07-16': '56'}
我用这个代码来计算同一个月的周值:
^{pr2}$一般来说,它工作良好,在这个小样本中,它应该会返回
monthlydic={'2007-10': '114', '2011-07': '112'}
但是在一个字典里,显然有一个值我不能转换成float,所以我得到了一个非常恼人的消息:
ValueError: could not convert string to float
我的问题是:
a)有没有方法可以追踪字典中的错误条目,以便更好地了解发生了什么?在
b)有没有一种方法可以将“if语句”转换为“try语句”,使其忽略任何错误?在
之前只需执行一次,而不是对
if: else:
的两个分支执行此操作一些建议。在
首先,使用一个defaultdict来保存密钥的初始检查。其次,使用try转换为float,如果不是float则返回None。在
如果没有遇到任何问题,请将其保存到列表中。在
相关问题 更多 >
编程相关推荐