您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – 随机“int不可订阅”行为

5b51 2022/1/14 8:20:32 python 字数 2725 阅读 449 来源 www.jb51.cc/python

我正在读一个有效的JSON文件(嵌套5级深度),然后向它添加一些数据,然后尝试将这些数据用于某些计算.我正在以随机的方式获得int不是可下载的错误.我无法绕过它.转换为str()没有帮助,使用pprint打印并没有缓解它,在输入上转换为int()也无济于事.我拼命耗尽了选择......主功能with open(rNgram_file, 'r', encodi

概述

我正在读一个有效的JSON文件(嵌套5级深度),然后向它添加一些数据,然后尝试将这些数据用于某些计算.

我正在以随机的方式获得int不是可下载的错误.我无法绕过它.转换为str()没有帮助,使用pprint打印并没有缓解它,在输入上转换为int()也无济于事.我拼命耗尽了选择……

功能

with open(rNgram_file,'r',encoding='utf-8') as ngram_file:
    data = json.load(ngram_file)
    data = rank_items(data)
    data = probability_items(data)

rank_items(数据)

所有值都在5嵌套级别计算,并在树中向上添加.我将int()强制转换添加到输入中作为可能的解决方案,但这没有帮助.获取x_grams [‘_ rank’]会出现问题

for ngram,one_grams in data.items():
        ngram_rank = 0
        for one_gram,two_grams in one_grams.items():
            one_gram_rank = 0
           [..]
                for four_gram,values in four_grams.items():
                # 4gram = of,values = 34
                three_gram_rank += values
                four_grams['_rank'] = int(three_gram_rank)
                two_gram_rank += three_gram_rank
           [..]    
            two_grams['_rank'] = int(one_gram_rank)
            ngram_rank += one_gram_rank
        one_grams['_rank'] = int(ngram_rank)

probability_items(数据)

这是错误发生的地方.看似随意,它会抱怨int不是可订阅的,其中x_rank或x_grams [‘rank]被打印或分配,即使它们是用type()计算的(如果它有效,则表示< class'int'>

总结

以上是编程之家为你收集整理的python – 随机“int不可订阅”行为全部内容,希望文章能够帮你解决python – 随机“int不可订阅”行为所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶