Ошибка имени при запуске скрипта Python

1

Мой код

class GuessPassword(object):
      def generate_Parent(self,length):
              genes= []
              while len(genes) < length:
                   sampleSize = min(length - 
                       len(genes),len(self.__class__.geneSet))         
                   genes.extend(random.sample(self.__class__.geneSet, 
                              sampleSize))
             return ''.join(genes)

В моем основном методе

if __name__ == '__main__':
   random.seed()
   bestparent = self.generate_Parent( len(target))

и он дает ошибку "NameError: name" self "не определен". И когда я запускал его без "я", он выдавал ошибку "NameError: name" generate_Parent "не определен".

Я знаю, это небольшая проблема. Но я искал и не мог найти решение. Любая помощь будет большой.

Теги:
main

1 ответ

1
Лучший ответ

Вы используете self вне класса, также вам нужно создать object класса GuessPassword, если вы хотите использовать методы класса.

if __name__ == '__main__':
   random.seed()
   # bestparent = self.generate_Parent( len(target)) # here is error

   # make object of a class
   guess = GuessPassword()
   # remove 'self' because you are not in a class, and use object instance
   bestparent = guess.generate_Parent( len(target)) 
  • 1
    Спасибо, что работал ..

Ещё вопросы

Сообщество Overcoder
Наверх
Меню