← Все вопросы
Можно ли в одной строке присвоить значения сразу нескольким переменным?
4
Видел в примерах строку типа x, y, z = 1, 2, 3. Это правда работает и сразу задаёт три переменные? Или надо обязательно писать каждую с новой строки? Только начал, хочу понять, как правильно.
2 ответа
8
✓ Принятый ответ — помог автору
Да, работает. Это называется множественное присваивание: слева перечисляешь переменные, справа — значения, и они расставляются по порядку:
x, y, z = 1, 2, 3
print(x, y, z) # 1 2 3
Главное правило — слева и справа должно быть одинаковое количество элементов, иначе будет ошибка. Это удобно, например, чтобы поменять переменные местами: a, b = b, a.
2
Только не злоупотребляй: если переменных много и они не связаны по смыслу, читать a, b, c, d = ... тяжело. Для пары значений — отлично, а длинные цепочки лучше писать по строкам.
Ваш ответ
Войдите, чтобы ответить на вопрос.