python类、值字典

python类、值字典,python,class,dictionary,Python,Class,Dictionary,我正在尝试将类的字典指定为值,字符串指定为键。 在主循环中打印时,我有正确的值, 但一旦我离开主循环,我的“cliStat”变量就显示为刚刚初始化 具有“O”值 这是我做作业和打印的代码部分。 我的问题是,为什么cliStat仍然保留“0”值 如果需要,这里有完整的代码 如果您需要运行代码,以下是数据文件 只需在文件夹中更改logDir变量 谢谢你看 并非所有对象都保持为零 我把最后一个循环改为 for cle,val in cliStat.items(): if val

我正在尝试将类的字典指定为值,字符串指定为键。 在主循环中打印时,我有正确的值, 但一旦我离开主循环,我的“cliStat”变量就显示为刚刚初始化 具有“O”值

这是我做作业和打印的代码部分。 我的问题是,为什么cliStat仍然保留“0”值

如果需要,这里有完整的代码

如果您需要运行代码,以下是数据文件

只需在文件夹中更改logDir变量


谢谢你看

并非所有对象都保持为零

我把最后一个循环改为

    for cle,val in cliStat.items():
        if val.nb_users:
            print val
得到了六个客户端的输出,所有客户端都充满了非零数据


最好先用少量数据测试代码。

注意:不需要像
(int)
那样用
()
包围类型来执行强制转换。只需执行
int(object)
。是否确实要添加非零值
(0+0)/2==0
是的,我考虑过,但即使是nb_用户也保持在0,并且在主循环中打印它们会得到非零值。您可以制作一个简化的可运行示例吗?dpaste中的代码依赖于一些数据文件。@Janne Karila:这里有一些数据文件:只需使用新文件夹更改logDir变量即可。您将拥有可运行的代码。。谢谢你的调查!
    for cle,val in cliStat.items():
        if val.nb_users:
            print val