Задать вопрос

Как перенести строку в функции методом split()?

Без функции все хорошо:
text = 'hello,world'
var = text.split(',')
for i in var:
    print(i)

С функцией выводит только до sep : hello
def f():
    text = 'hello,world'
    var = text.split(',')
    for i in var:
        return i
    return
print(f())

Нужно именно return, а не print
  • Вопрос задан
  • 87 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@ivan_kniga
Дело в том, что возвращение в функции подразумевает окончание функции, как break в цикле, так что в данной ситуации можно воспользоваться генератором, но тогда функцию придется вызывать несколько раз.

Скорее всего лучшим решением будет возвращение массива с кусочками текста и печать уже в основном коде через цикл, то есть так:
def f():
    text = "hello,world"
    return text.split(",")

for i in f():
    print(i)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы