Why does this python method gives an error saying global name not defined?

前端 未结 3 1113
时光取名叫无心
时光取名叫无心 2021-01-27 13:00

I have a single code file for my Google App Engine project. This simple file has one class, and inside it a few methods. Why does this python method gives an error saying global

相关标签:
3条回答
  • 2021-01-27 13:47

    It's an instance method, you need to use self.gen_groups(...) and self.gen_albums(...).

    Edit: I'm guessing the TypeError you are getting now is because you removed the 'self' argument from gen_groups(). You'll need to put it back in:

    def get_groups(self, lines):
        ...
    
    0 讨论(0)
  • 2021-01-27 13:59

    You have to use it like this:

    self.gen_groups(input)
    

    There is not implicit "self" in Python.

    0 讨论(0)
  • 2021-01-27 14:02

    You need to call it explicitly with an instance:

    groups = self.gen_groups(input)
    

    Similarly for some of the other calls you're making in there, e.g. gen_album.

    Also, see Knowing When to Use self and __init__ for more information.

    0 讨论(0)
提交回复
热议问题