小编bou*_*nce的帖子

在python中使用setattr()

我正在寻找有人解释如何使用的基本知识,而不是使用setattr().

我的问题出现了尝试使用一个类方法/函数来返回数据然后放入另一个方法/函数.在这种情况下,也许更简单的方法会好得多,但我试图理解类的工作原理.这个问题似乎取决于此问题setattr(),这是我试图对此进行相当简单的使用.

虽然它是不太一样的问题,我在下面的Python困难的方法,ex42 -the while环@线18-41.

我尝试编写一个\__init__(),然后用它getattr()来思考可能需要在类的命名空间中的东西,但这似乎没有帮助.

#! /bin/python2.6

class HolyGrail(object):

    def __init__(self):
        self.start = 'start_at_init'

    # function definition in question:
    # TypeError: 'str' object is not callable

    def run_it(self):
        start = setattr(self, 'name', 'get_thing')
        start = self.name

        # Something wrong here?
        value_returned = start() #I believe this == self.get_thing()
        use_it(value_returned)

    """
    # alternate function definitions
    # NameError: global name 'start' is not defined

    def __init__(self):
        self.start = 'get_thing'

    def run_it(self): …
Run Code Online (Sandbox Code Playgroud)

python setattr

54
推荐指数
5
解决办法
14万
查看次数

标签 统计

python ×1

setattr ×1