Python无法识别对象参数

时间:2019-10-09 23:34:10

标签: python python-3.x

    def function(objectA_list):
         for objectA in objectA_list:
              str = objectA.attr1

objectA.attr1无法识别。 objectA是我已导入的另一个文件中的类的实例。如何将objectA变量“投射”为objectA,以便可以使用访问基础属性?

2 个答案:

答案 0 :(得分:1)

我认为您可能会对措辞或代码感到困惑。

如果我们有一个类的实例,则它是一个真实的对象。

class Dog:
    speak = "woof"

husky = Dog()

因此,如果您有权访问参考变量,我们可以在对象内部调用语音变量,它将返回“ woof”

husky = Dog()
print(husky.speak) #woof!

如果有对象列表:

husky = Dog()
labrador = Dog()
pug = Dog()
dogs = [husky, labrador, pug]

for dog in dogs:
    print(dog.speak) 

哈士奇犬,拉布拉多犬和哈巴狗都会动。

参考变量仅适用于我们-不应将它们用作函数的一部分。

答案 1 :(得分:-1)

在髋关节之外,您可以将对象的引用传递给函数,然后访问objectA的基础属性。例如:

objectA = Myclass()

def function(objectA_list, objectA):
    for i in objectA_list:
        str = objectA.attr1

希望这会为您指明正确的方向!