@swwwo

Как сделать, чтобы функция возвращала все элементы?

Как сделать, чтобы функция возвращала все элементы?

a = [1,2,3,4,5,6,7]

def get(a):
    for i in a:
        return i

def main():
    s = get(a)
    print(s+1)

main()
  • Вопрос задан
  • 90 просмотров
Решения вопроса 1
Что это вообще такое. Какая цель этой программы. Я бы написал вот так:
numbers = [number for number in range(1, 7)]

def main():
      for number in numbers:
            print(number)

if __name__ == "__main__":
      main()

Как сделать, чтобы функция возвращала все элементы?

Если вы хотите создать генератор, то почитайте об этом тут https://docs.python.org/3/tutorial/classes.html#ge...
numbers = [number for number in range(1, 7)]

def numbers_generator(numbers):
      for number in numbers:
            yield number

def main():
     for number in numbers_generator(numbers):
          print(number + 1)

if  __name__ == "__main__":
    main()

Хотя этой код, как по мне не имеет некакого смысла.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
trapwalker
@trapwalker Куратор тега Python
Программист, энтузиаст
Потому что выход из функции происходит при первом попавшемся return'е с тем значением, которое первое туда попало.
Учите матчасть. Читайте внимательно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы