Создайте случайный список из 0-100 разной длины с использованием класса и верните сгенерированный список - PullRequest
0 голосов
/ 28 декабря 2018

Я хочу создать список из 0-100, но мои критерии таковы:

  1. Список должен начинаться с 0 и заканчиваться 0.

  2. Нет 0 между ними.

  3. Разной длины

, безусловно, я сделал это:

    import random
    class getRandomSolution:
        ls=[]
        def getsolution(self):
            ls=random.sample(range(100),random.randrange(0,99))
            ls.append(0)
            ls.insert(0,0)
             print('the path/solutuin : {}'.format(ls))
        def parsesoluotion(self):
            return ls



       obj1=getRandomSolution()
       obj1.getsolution()

Вывод:

      the path/solutuin : [0, 16, 25, 80, 43, 81, 9, 50, 95, 70, 31, 62, 21, 83, 0]

но как только я вызываю метод parsesoluotion из класса getRandomSolution, я получаю эту ошибку:

           list1=obj1.parsesoluotion()

            NameError: name 'ls' is not defined

1 Ответ

0 голосов
/ 28 декабря 2018

Чтобы дать вам несколько советов, вы можете использовать случайный пакет (я включил ссылку на документы ниже), чтобы сначала сгенерировать число в диапазоне от 0 до 100

random.randint(0, 100)

Это будеттогда будьте размером вашего списка.Теперь инициализируйте пустой список, проверьте, равен ли его размер 0, добавьте к нему 0.Затем вы хотите инициализировать цикл for до двух меньше, чем размер списка (случайно сгенерированное целое число), и добавлять случайные целые числа (которые не равны нулю) в список на время цикла for.

После того, как цикл for закончен, добавьте еще один 0, и это должно составить требуемый список.

https://docs.python.org/2/library/random.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...