擅长:python、mysql、java
<p>假设匹配对象必须具有相似的id(<code>Script1Object</code>中的<code>ID</code>和<code>Script2Object</code>中的<code>number</code>),并且假设<code>script2_list</code>项都具有唯一的<code>number</code>,您可以使用<a href="https://docs.python.org/3/tutorial/datastructures.html#dictionaries" rel="nofollow noreferrer">dictionary</a>创建从<code>number</code>到对象的映射。然后,当您进行迭代时,您可以通过字典的<code>number</code>直接从字典中获得一个<code>Script2Object</code>(而不必遍历整个<code>script2_list</code>)。然后可以像以前一样调用两个对象上的每个匹配函数:</p>
<pre><code>script1_list = script1()
script2_list = script2()
script2_dict = {obj.number: obj for obj in script2_list}
for item1 in script1_list:
item2 = script2_dict.get(item1.ID, None)
if item2 is None:
print('no item2 found for this id: ', item1.ID)
# do something if there's no matching id
if is_match(item1, item2):
do_matching_action()
elif is_different_match(item1, item2):
do_other_matching_action()
if is_bad(item1):
do_error_action()
</code></pre>