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

Как вывести все результаты цикла for в одну переменную?

Есть кусок кода:
for i in data['list']:
            
            if (i['dt_txt'])[12:13] == '0':
                break

            xz = ((i['dt_txt'])[10:16], "температура" + '{0:+3.0f}'.format(i['main']['temp']), "ветер" +
                  '{0:2.0f}'.format(i['wind']['speed']) + " м/с",
                  get_wind_direction(i['wind']['deg']),
                  i['weather'][0]['description'])

            xznew = (xz[0] + " " + xz[1] + " " + xz[2] + " " + xz[3] + " " + xz[4])

Как вывести все результаты внутри цикла for в переменную?
Если указываю в цикле, что переменная xznew глобальная (внутри цикла пишу global xznew, то выдается только последний результат, а надо все. Заранее спасибо за помощь новичку )
  • Вопрос задан
  • 638 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
tema_sun
@tema_sun
Например, так:
xznew = []
for i in data['list']:
            ...

            xznew.append((xz[0] + " " + xz[1] + " " + xz[2] + " " + xz[3] + " " + xz[4]))
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
NeiroNx
@NeiroNx
Программист
Или так, но переменную надо определить до цикла.
xznew += (xz[0] + " " + xz[1] + " " + xz[2] + " " + xz[3] + " " + xz[4]+"\n")
Ответ написан
Комментировать
Sly_tom_cat
@Sly_tom_cat
.
Вот блин советчики... зачем такой говнокод советовать если есть join

xz[0] + " " + xz[1] + " " + xz[2] + " " + xz[3] + " " + xz[4]+"\n"

Эквивалентно

" ".join(xz)+"\n"
Ответ написан
Ваш ответ на вопрос

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

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