Загрузка...

Функция должна возвращать новое значаение из списка

Тема в разделе Python создана пользователем Kyber_Zero 22 апр 2020. 132 просмотра

  1. Kyber_Zero
    Kyber_Zero Автор темы 22 апр 2020 Dead Inside 5 21 янв 2018
    Есть функция some_f() и в ней список
    lst = ['left', 'right', 'up']
    Я хочу сделать функцию которая будет возвращать значение из списка и каждый раз оно будет новым и идти по порядку т.е
    1. some_f() => 'left'
    2. some_f() => 'right'
    3. some_f() => 'up'
    4. some_f() => 'left'
    Как это можно сделать или есть вариант проще?
     
  2. oriole
    oriole 22 апр 2020 был(а) давно
    Код
    lst = ['left', 'right', 'up']

    class MyClass:
    i = 0
    def func(self):
    self.i += 1
    return lst[self.i % len(lst)-1]


    a = MyClass()
    print(a.func())
    print(a.func())
    print(a.func())
    print(a.func())
    print(a.func())
    print(a.func())
    вывод
    Код
    left
    right
    up
    left
    right
    up
    >>>
     
  3. Kyber_Zero
    Kyber_Zero Автор темы 22 апр 2020 Dead Inside 5 21 янв 2018
    Спасибо :*
     
  4. SvetoCopy
    *напоминаю о существовании библиотеки collection*
     
  5. MozambiQQ
    Сделай не список, а засунь это в set()
     
Top
Загрузка...