← Все вопросы

Можно ли в одной строке присвоить значения сразу нескольким переменным?

Задан 2 месяца назад1.3к просмотров2 ответа
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 = ... тяжело. Для пары значений — отлично, а длинные цепочки лучше писать по строкам.

Ваш ответ

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