pet*_*ush 10 python dictionary python-3.x
有两个词:旧的和更新的.我想,以检查它们是否相等,除了status,latitude和longitude键.
assert old_dict['status'] != updated_dict['status']
assert old_dict['latitude'] != updated_dict['latitude']
assert old_dict['longitude'] != updated_dict['longitude']
for field in ('status', 'latitude', 'longitude'):
updated_dict.pop(field)
old_dict.pop(field)
assert old_dict == updated_dict
Run Code Online (Sandbox Code Playgroud)
什么是pythonic方式这样做?
您可以断言两个字典的项之间的对称差异是三个键的:
assert {k for k, _ in old_dict.items() ^ updated_dict.items()} == {'status', 'latitude', 'longitude'}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
665 次 |
| 最近记录: |