Python 如何检查值是nan还是列表?

Python 如何检查值是nan还是列表?,python,pandas,numpy,Python,Pandas,Numpy,我目前正在使用pandasDataFrames。 迭代时,我想检查一个值是numpy.nan还是一个列表 for i, row in df.iterrows(): value = row["Name"] if pd.isnull(value): dosomething() 这很好用,除非 type(value) == list 然后我想也许把any()放在周围: for i, row in df.iterrows(): value = row["Name"] if any(pd.is

我目前正在使用pandas
DataFrame
s。 迭代时,我想检查一个值是
numpy.nan
还是一个列表

for i, row in df.iterrows():
value = row["Name"]
if pd.isnull(value):
    dosomething()
这很好用,除非

type(value) == list
然后我想也许把
any()
放在周围:

for i, row in df.iterrows():
value = row["Name"]
if any(pd.isnull(value)):
    dosomething()
但是现在每当a
NaN
有值时,我都会得到一个异常,因为它显然是不可编辑的

是否有比检查值类型更好的解决方案?

使用

for i, row in df.iterrows():
    value = row["Name"]
    if pd.isnull(value) or (type(value) == list):
        dosomething()
另一种检查方法是
isinstance

for i, row in df.iterrows():
    value = row["Name"]
    if pd.isnull(value) or isinstance(value, list):
        dosomething()
使用

for i, row in df.iterrows():
    value = row["Name"]
    if pd.isnull(value) or (type(value) == list):
        dosomething()
另一种检查方法是
isinstance

for i, row in df.iterrows():
    value = row["Name"]
    if pd.isnull(value) or isinstance(value, list):
        dosomething()

但是如果type(value)=list(ValueError:包含多个元素的数组的真值不明确。请使用a.any()或a.all())@aAnnAa-可能是重复的列,那么需要
any(pd.isnull(value)或(type(value)=list))
它现在可以与“if not isinstance(value,list)和pd.isnull(value)”一起工作,非常感谢你的帮助:)@aanna-不客气!如果我的回答有帮助,别忘了。谢谢。但是如果type(value)=list(ValueError:包含多个元素的数组的真值是不明确的。请使用a.any()或a.all())@aAnnAa-可能是重复的列,然后需要
any(pd.isnull(value)或(type(value)=list))
它现在与“if not isinstance(value,list)和pd.isnull(value)”一起工作,非常感谢你的帮助:)@aanna-不客气!如果我的回答有帮助,别忘了。谢谢