Python 使用 itemgetter 比较 2 个字典之前的小写字典值

Python lower case dict values before comparing 2 dicts using itemgetter

我比较 2 个字典 dict1 键和值必须在 dict2
问题是在 dict2 中,值是大写的,我喜欢在比较它们之前将它们小写。如果可以不循环整个 dict2 而只循环相关的键

dict1 = {'version': 'fff', 'ff':1,'name_app': ['for']}
dict2 = {'version': 'FFF', 'ff':1,'name_app': ['for'], 'dir': 'c', 'path': 'cc'}
g = itemgetter(*dict1)
if(g(dict1) == g(dict2)):
    print("True")
else:
    print("False") 

在此示例中,我喜欢将 dict2 中的版本密钥小写,但它可以超过 1 个密钥

尝试:

from operator import itemgetter

dict1 = {"version": "fff", "ff": 1, "name_app": ["for"]}
dict2 = {
    "version": "FFF",
    "ff": 1,
    "name_app": ["for"],
    "dir": "c",
    "path": "cc",
}
g = itemgetter(*dict1)

if g(dict1) == tuple(
    map(lambda x: x.lower() if isinstance(x, str) else x, g(dict2))
):
    print("True")
else:
    print("False")

打印:

True