提问者:小点点

从json中移除整数的python isinstance


我正在用Python编写代码,并使用一个有2列数据的JSON文件; 一个键,以及在我处理的数据中找到该键的次数。 我的目标是移除所有整数键。 我将JSON提取为test_map,然后使用keys()方法创建键的字典(keys)。 我试图使用isinstance循环遍历键,以标识键中的每个整数键。 我还没有进入删除部分,但我注意到keys中的每个键都被标识为字符串,因此isinstance没有捕获任何内容。 如果有人对如何编码来捕获int键有任何想法,然后可能移除它们,我将非常感激。 我相信解决办法包括选角,但我想不出来。

    keys=test_map.keys()
    for key in keys:
         if isinstance(key,int):
         print(f"key: {key}")

共2个答案

匿名用户

你可以试着这样选角。 但是您需要编写一个try,除非该键不能转换为int。

keys = test_map.keys()
for key in keys:
    try:
        a = int(key)
        del test_map[key]
    except:
        pass

匿名用户

给你:

res = {k:v for k,v in test_map.items() if not k.isdigit()}