1. <small id='TrgJH'></small><noframes id='TrgJH'>

      <i id='TrgJH'><tr id='TrgJH'><dt id='TrgJH'><q id='TrgJH'><span id='TrgJH'><b id='TrgJH'><form id='TrgJH'><ins id='TrgJH'></ins><ul id='TrgJH'></ul><sub id='TrgJH'></sub></form><legend id='TrgJH'></legend><bdo id='TrgJH'><pre id='TrgJH'><center id='TrgJH'></center></pre></bdo></b><th id='TrgJH'></th></span></q></dt></tr></i><div id='TrgJH'><tfoot id='TrgJH'></tfoot><dl id='TrgJH'><fieldset id='TrgJH'></fieldset></dl></div>
        <tfoot id='TrgJH'></tfoot>
          <bdo id='TrgJH'></bdo><ul id='TrgJH'></ul>

        <legend id='TrgJH'><style id='TrgJH'><dir id='TrgJH'><q id='TrgJH'></q></dir></style></legend>

        如何遍历多个 json 字典来检查相同类型键的值?

        时间:2023-06-07

        <small id='tY8VF'></small><noframes id='tY8VF'>

        1. <legend id='tY8VF'><style id='tY8VF'><dir id='tY8VF'><q id='tY8VF'></q></dir></style></legend>

          <i id='tY8VF'><tr id='tY8VF'><dt id='tY8VF'><q id='tY8VF'><span id='tY8VF'><b id='tY8VF'><form id='tY8VF'><ins id='tY8VF'></ins><ul id='tY8VF'></ul><sub id='tY8VF'></sub></form><legend id='tY8VF'></legend><bdo id='tY8VF'><pre id='tY8VF'><center id='tY8VF'></center></pre></bdo></b><th id='tY8VF'></th></span></q></dt></tr></i><div id='tY8VF'><tfoot id='tY8VF'></tfoot><dl id='tY8VF'><fieldset id='tY8VF'></fieldset></dl></div>

            <tbody id='tY8VF'></tbody>
          • <tfoot id='tY8VF'></tfoot>
              • <bdo id='tY8VF'></bdo><ul id='tY8VF'></ul>
                  本文介绍了如何遍历多个 json 字典来检查相同类型键的值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我希望能够在多个 json 字典中获取delta"的值.如果有任何改变,我正在使用来自 kivy 的 JsonStore.当我按下启动 check_streak 函数的按钮时,我得到 NameError: name 'delta' is not defined.代码如下:

                  I want to be able to get the value of "delta" in multiple json dictionaries. I'm using JsonStore from kivy if that changes anything. When I press the button that starts the check_streak function I get NameError: name 'delta' is not defined. Here is the code:

                  class MainApp(App):
                  
                      def build(self): # build() returns an instance
                          self.store = JsonStore("streak.json") # file that stores the streaks:
                  
                  
                          return presentation
                  
                      def check_streak(self, instance):
                  
                          for item in self.store.find(delta):
                  
                              if delta > time.time():
                                  print("early")
                  
                              if delta == time.time():
                                  print("on time")
                  
                              if delta < time.time():
                                  print("late")
                  

                  这是一个单独文件中的 json 字典:

                  Here is the json dictionary in a seperate file:

                  {"first": {"action": "first", "action_num": "1", "seconds": 60, "score": 0, "delta": 1555714261.0438898}, "second": {"action": "second", "action_num": "2", "seconds": 120, "score": 0, "delta": 1555879741.894656}}
                  

                  我希望能够从文件中的每个对象中获取delta"的值.我该怎么做?

                  I want to be able to get the value of "delta" from every object put inside the file. How would I do this?

                  推荐答案

                  这个问题可以用item generator来得到'delta'的值.代码如下:

                  This question can be solved with an item generator to get the value of 'delta'. Here is the code:

                  class MainApp(App):
                  
                      def build(self): # build() returns an instance
                          self.store = JsonStore("streak.json") # file that stores the streaks:
                  
                  
                          return presentation
                  
                      # Gets the value of delta (code I may never understand lol)
                      def item_generator(self, json_input, lookup_key):
                          if isinstance(json_input, dict):
                              for k, v in json_input.items():
                                  if k == lookup_key:
                                      yield v
                                  else:
                                      yield from self.item_generator(v, lookup_key)
                          elif isinstance(json_input, list):
                              for item in json_input:
                                  yield from self.item_generator(item, lookup_key)
                  
                      def check_streak(self, instance):
                          with open("streak.json", "r") as read_file:
                              data = json.load(read_file)
                              values = self.item_generator(data, 'delta')
                  
                  
                  
                          for honey in values:
                              if honey > time.time():
                                  print("early")
                  
                              if honey == time.time():
                                  print("on time")
                  
                              if honey < time.time():
                                  print("late")
                  

                  这篇关于如何遍历多个 json 字典来检查相同类型键的值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:Python/Kivy AttributeError:“超级"对象没有属性“__getattr__" 下一篇:有哪些 Kivy 教程可用

                  相关文章

                  <tfoot id='zbFWG'></tfoot>
                • <i id='zbFWG'><tr id='zbFWG'><dt id='zbFWG'><q id='zbFWG'><span id='zbFWG'><b id='zbFWG'><form id='zbFWG'><ins id='zbFWG'></ins><ul id='zbFWG'></ul><sub id='zbFWG'></sub></form><legend id='zbFWG'></legend><bdo id='zbFWG'><pre id='zbFWG'><center id='zbFWG'></center></pre></bdo></b><th id='zbFWG'></th></span></q></dt></tr></i><div id='zbFWG'><tfoot id='zbFWG'></tfoot><dl id='zbFWG'><fieldset id='zbFWG'></fieldset></dl></div>

                    • <bdo id='zbFWG'></bdo><ul id='zbFWG'></ul>
                  1. <small id='zbFWG'></small><noframes id='zbFWG'>

                      <legend id='zbFWG'><style id='zbFWG'><dir id='zbFWG'><q id='zbFWG'></q></dir></style></legend>