【发布时间】:2020-01-14 09:23:56
【问题描述】:
在一个项目中,我有一个通用函数,它可以将不同的数据类型作为输入数据。在将项目迁移到 Python 3 时,我遇到了 odict_values 的问题。我需要将它们转换为列表,不幸的是,并非所有数据类型都应该转换。所以我决定做这样的事情:
if isinstance(data, odict_values):
data = list(data)
但我得到一个错误 - 未定义的变量 odict_values。我不明白我应该提供什么作为 isinstance 的第二个参数。如果我使用type(data),我可以清楚地看到<class 'odict_values'>。到目前为止,我想出的最佳解决方案是使用:
str(type(data)) == "<class 'odict_values'>"
但感觉不对。
【问题讨论】:
标签: python python-3.x types ordereddictionary