如果有人将unicode字符串传递给您的函数会怎样?还是从dict派生的类?还是实现类似dict的接口的类?以下代码涵盖了前两种情况。如果您使用的是Python 2.6,则可能要使用collections.Mapping
而不是dict
按照ABC PEP。
def value_list(x):
if isinstance(x, dict):
return list(set(x.values()))
elif isinstance(x, basestring):
return [x]
else:
return None