如果dict值超过指定的位数

时间:2015-10-26 12:56:23

标签: python dictionary

如果dict中的值大于,例如,我正在尝试引发错误6位数(也可用于测试特定数量的小数位)。

e.g。对于下面的dict(并说数字= 6)

example_dict = {'dict_id': 12345,
                 'key1': 10501.04999999999999999262}
for key, value in tariff_detail.items():
    if value == type(float) and (test for number of digits):
        raise ValueError("DictID: {}, Key Missing: {}".format(example_dict['dict_id'],key))

(请注意,如果我在ipython中坚持上述示例并执行example_dict.values(),它会弹出[10501.05] - 是否存在内置舍入或仅用于显示?)

测试数字位数并在失败时引发错误的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

一种简单的方法是将值转换为字符串,然后计算其长度:

if len(str(value)) > 6 :