在布尔语句中使用type()的结果?

如果我定义一个字典,其中一个或多个值也是
词典,例如:
My_dict={"a":"字符串","b":"字符串","c":{"x":"0","y":"1"},
"d":"字符串"}
我如何使用type()的输出,这样我可以做一件事,如果值
是字符串,如果值是字典,则是另一个?
也就是说,我想定义一个这样的循环,但我不确定
语法:
对于KEY,MY_DICT.ITEMS()中的值:
如果类型{Value)是
#做字典逻辑吗
ELIF类型(值)为
#做字符串逻辑
#ETC

# 回答1


DPapathanasiou写道:
如果类型(V)是DICT:
……IS应激
对于没有内置名称的内置类型,可以导入类型
模块,或者只使用type()自己创建一个。


对于UserClass实例,请使用UserClass。
特里·简·里迪
# 回答2


DPapathanasiou写道:
您正在搜索"isinstance"(或者可能是issubclass)
对于KEY,MY_DICT.ITEMS()中的值:
If isInstance(值,判定):
#做字典逻辑吗
Elif isInstance(Value,str):#将base字符串用于str和unicode
#做字符串逻辑
或者,如果您必须使用,请键入:
如果issubclass(type(值),dict):
#做字典逻辑吗
Elif issubclass(type(值),str):
#做字符串逻辑
--Scott David Daniels SC*@Acm.Org

标签: python

添加新评论