这个问题似乎让人难以置信,但我无法弄清楚。我知道你可以在python中检查数据类型,但是如何根据数据类型设置条件呢?例如,如果我必须编写对字典/列表进行排序并将所有整数加起来的代码,那么如何隔离搜索以仅查找整数?
我想一个简单的例子看起来像这样:
y = []
for x in somelist:
if type(x) == <type 'int'>: ### <--- psuedo-code line
y.append(x)
print sum(int(z) for z in y)
那么对于第3行,我将如何设置这样的条件?
怎么样,
if isinstance(x, int):
但更干净的方法就是
sum(z for z in y if isinstance(z, int))
供进一步阅读:python中的isinstance()和type()之间的区别
是的,他想做的事情非常好。但是,可能值得指出的是他的问题的答案,
if type(x) == int
但是为什么这不是一个好主意。