我正在尝试制作一个脚本,在其中检查 old_list 和 new_list。如果 new_list 具有与 Old_list 不同的值。如果 old_list 具有比 new_list 更多的值/元素,它将使用 if-elif 语句进行检查,如果有它不应该做任何事情,反之亦然。
old_list = {'name': 'Hello', 'code': ['Medium', 'Easy', 'Hard']}
while True:
new_list = {'name': 'Stackoverflow', 'code': ['Hard', 'Easy']}
try:
if any(i not in old_list['code'] for i in new_list['code']):
if old_list['code'] > new_list['code']:
print("Element removed")
old_list['code'] = new_list['code']
elif old_list['code'] < new_list['code']:
print("New elements added")
old_list['code'] = new_list['code']
else:
randomtime = random.randint(1, 2)
time.sleep(randomtime)
continue
except Exception as err:
randomtime = random.randint(1, 2)
time.sleep(randomtime)
continue
输出应该是“元素中删除”和值应更新old_list['code']的['Medium', 'Easy', 'Hard']到['Hard', 'Easy']。但是现在它甚至没有通过,if any(i not in old_list['code'] for i in new_list['code']):因为两个中的值code都在但 new_list 中没有“中”,但由于某种原因,我不知道它没有通过,else而是通过了。
如果 new_list 的值/元素比 old_list 多/少,我怎么可能使它更新值,然后打印出元素是否被删除或添加?
天涯尽头无女友
相关分类