有没有一种“干净”的方法来获取 python3 中字典键的类型?
例如,我想确定其中一本词典是否具有 str
类型的键:
d1 = { 1:'one', 2:'two', 5:'five' }
d2 = { '1':'one', '2':'two', '5':'five' }
有几种方法可以实现这一点,例如,使用一些方法:
isinstance(list(d2.keys())[0], type('str'))
但这很烦人,因为 d2.keys()
不可索引,因此您需要将其转换为列表,只是为了提取列表中一个元素的值并检查类型。
那么 python3 有 get_key_type(d2)
吗?如果不是,是否有更好(更干净)的方法来询问字典的键是否为 str
类型?
原文由 Rockcat 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果我理解你的问题是正确的,我知道获取字典中所有键的类型的最干净的方法是:
或者如果你想拥有所有你可以使用的独特类型:
这样你就会知道是单一类型还是多种类型。 (感谢@邓肯)
这将返回包含在各个字典中找到的键类型的列表:
o / p:
但是,如果您询问
d2.keys()
的类型,它是:希望这在某种程度上有所帮助。