【问题标题】:how to get modulus difference of values of two json objects in python如何在python中获取两个json对象值的模差
【发布时间】:2023-01-25 21:59:23
【问题描述】:

我有两个 JSON 数组,我需要获取 JSON 对象键的模差。我的数组列表可以包含 1000 个元素。如何有效地计算它?有没有办法在不使用循环的情况下并行执行?

例如

js1 = [{'myVal':100},{'myVal':200}]
js2 = [{'myVal':500},{'myVal':800}]

结果应该是:

[{'myVal':400},{'myVal':600}]

【问题讨论】:

    标签: python arrays json key modulo


    【解决方案1】:

    有两种方法可以实现它:

    • 使用map
    js1 = [{'myVal':100},{'myVal':200}]
    js2 = [{'myVal':500},{'myVal':800}]  
    result = list(map(lambda x, y: {'myVal': y['myVal'] - x['myVal']}, js1, js2))
    print(result)
    
    • 使用列表理解
    js1 = [{'myVal':100},{'myVal':200}]
    js2 = [{'myVal':500},{'myVal':800}]
    result = [{'myVal': y['myVal'] - x['myVal']} for x,y in zip(js1,js2)]
    print(result)
    

    他们都会输出

    [{'myVal': 400}, {'myVal': 600}]
    

    【讨论】:

    • 可执行文件——对象和键的数量会影响性能吗?两者中哪一个更好?我如何准确检查它?
    • map 或列表理解比使用循环更有效,因为它允许并行执行计算。你更舒服的那个
    • 非常感谢 :) 将您的解决方案标记为答案 :)
    猜你喜欢
    • 2012-01-15
    • 1970-01-01
    • 1970-01-01
    • 2015-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-26
    相关资源
    最近更新 更多