【发布时间】:2021-04-03 18:31:22
【问题描述】:
如何检查config = {'median': {}, 'gauss': {'ksize' :( 3,3), 'sigmaX': 3}} 中的'ksize' 是否为元组?是否有任何选项可以仅从 'ksize' 而不是从所有 gauss 值中获取值?如果我将来需要检查不同配置值中的不同值,我正在寻找一个通用功能。
【问题讨论】:
标签: python dictionary
如何检查config = {'median': {}, 'gauss': {'ksize' :( 3,3), 'sigmaX': 3}} 中的'ksize' 是否为元组?是否有任何选项可以仅从 'ksize' 而不是从所有 gauss 值中获取值?如果我将来需要检查不同配置值中的不同值,我正在寻找一个通用功能。
【问题讨论】:
标签: python dictionary
if type(config["gauss"]["ksize"]) is tuple:
print("It is a tuple")
使用python中的type内置函数。
print(config["gauss"]["ksize"])打印元组(3,3)
【讨论】:
isinstance() 是 python 测试对象是否属于特定类型的首选方法
type。 isIntance() 似乎更直观、更容易
isinstance 的优点是它尊重类的继承。通常只考虑对象的行为,因此允许测试对象属于子类。如果我需要具体知道一个对象是否属于一个类而不是一个子类,我也会使用type(obj)。
config = {'median': {}, 'gauss': {'ksize' :( 3,3), 'sigmaX': 3}}
print(isinstance(config["gauss"]["ksize"],tuple))
输出
是的
【讨论】: