如何从导入模块设置的类中获取所有属性,然后将它们存储到Pandas列中?



假设我有两个脚本。

#hhh.py module
class HHH:
def __init__(self, arg1, arg2):
self.arg1 = arg1
self.arg2 = arg2
self.some_variable1 = 123
self.some_variable2 = 'abc'

和一个导入上述脚本的脚本。最终目标是创建一个Pandas数据框架,该数据框架将变量名存储在一列中,将它们的值存储在另一列中(稍后导出)

import hhh
import pandas as pd
# Init some Pandas dataframe
df = pd.DataFrame(columns = ['VARIABLE', 'VALUE'])
# Set one column for HHH attribute names, other for attribute values
# So it would look something like this:
# In a dataframe:
#   VARIABLE = ['arg1', 'arg2', 'some_variable1', 'some_variable2']
#   VALUE = [arg1, arg2, 123, 'abc']

本质上,我有很多变量,所以我不能硬编码它们。我一直想弄明白这个,但我不知道它叫什么——搜索运气不好。

这可能吗?

我将为您提供如何访问数据的见解,然后您可以自己编写其余部分。

每个class对象都有一个__dict__方法,该方法存储class及其values中实例的名称。

a = hhh.HHH('a', 'b')

这里,我们正在为class创建一个实例,其中arg1'a',arg2'b'

a.__dict__.keys()

输出:

[' __arg1 ',"最长"、"some_variable1",' some_variable2 ']

a.__dict__.values()

输出:

['a', 'b', 123, 'abc']

__dict__key存储实例名,value存储实例名的值。

最新更新