gpt4 book ai didi

python - 如何在 Python 2.7 中动态构造函数的内容?

转载 作者:行者123 更新时间:2023-11-28 16:47:09 25 4
gpt4 key购买 nike

我遇到过很多文章,它们并没有完全解决我正在尝试做的事情。我希望这不是一个重复的问题。

我正在编写一个 Python 脚本,它与我 PC 之外的几个真实世界的对象进行交互。我已经编写了类,其中包含与这些对象交互所必需的功能。我还成功地编写了一个函数,在风格上不是很面向对象,它实例化这些类的实例,从中获取数据,并将其全部保存到 CSV 文件中。一切正常。我被绊倒的地方是试图使函数更具适应性,这样我就不必每次想添加另一个类实例或从预先存在的实例获取不同的数据点时都重新编写它。

我正在尝试的方法是创建一个包含类实例名称和特定函数名称的列表,以从这些实例中获取数据。然后我将这个列表传递给另一个函数。理想情况下,这个其他函数会为我的 CSV 文件创建一个标题(以便可以更轻松地解释数据),然后继续收集数据。

伪代码:

inst1 = my_class_1()
inst2 = my_class_2()
filename = 'fubar.csv'
control_list = ['inst1', 'value1', 'inst2', 'value']

my_fucntion(filename, control_list):
# Code to create a header for CSV file in the form inst1-value1, inst2-value2
# Loop to control the number of times to grab data
# Code which iterates control_list and builds up things like inst1.value1(), inst2.value2(),
# etc. and then appends the results to a list
# write results list to filename

如果我将 control_list 的所有元素作为字符串传递到我的函数中,我可以轻松地为结果文件生成我的 header ,但我不知道如何获取这些字符串并生成类似 inst1.value1() 以便 Python 可以访问我的类中的函数。我认为,如果我创建像 [inst1.value1(), inst2.value2()] 这样的列表,我可以从我的类中获取数据,但我不知道如何创建我的头文件方式。

如果我上面概述的方法行不通,我愿意接受其他方法。

最佳答案

借助 oops 概念,您无需使用其他 python 预定义函数即可轻松完成这项工作。

类 MyClass(对象): def init(self, value1): self.value1 = value1

inst = MyClass("示例")

获取属性值inst.value1

设置属性值inst.value1 = "你好"

关于python - 如何在 Python 2.7 中动态构造函数的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12734167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com