Python 在对象上创建和调用函数

Python 在对象上创建和调用函数,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个Object类型的列,我想将该对象的属性访问到另一个列中 import pandas as pd class foo(object): @property def value(self): return "bar" if __name__ == "__main__": a = [foo(), foo(), foo()] df = pd.DataFrame(data=a, columns=['test']) df['value'

我有一个Object类型的列,我想将该对象的属性访问到另一个列中

import pandas as pd

class foo(object):
    @property
    def value(self):
        return "bar"


if __name__ == "__main__":
    a = [foo(), foo(), foo()]
    df = pd.DataFrame(data=a, columns=['test'])
    df['value'] = df['test'].value
此操作失败,出现以下错误:

AttributeError:'Series'对象没有属性“value”

是否有方法调用类的属性或函数来填充新列

class foo(object):
    @property
    def value(self):
        return "bar"


if __name__ == "__main__":
    a = [foo(), foo(), foo()]
    df = pd.DataFrame(data=a, columns=['test'])
    df['value'] = df['test'].apply(lambda x: x.value)


关于:
df['value']=df['test']
?这将只是将列'value'设置为与test相同的对象,我要做的是将对象的属性值foo转换为列值:foo()。将值转换为df['value']
df