python同时给多个变量赋值
以下是一种很酷的编程捷径:在 Python 中,可使用元组来一次
赋多值。
>>> v = ('a', 2, True)
>>> (x, y, z) = v ①
>>> x
'a'
>>> y
2
>>> z
True
1. v 是一个三元素的元组,而 (x, y, z) 是包含三个变量的元
组。将其中一个赋值给另一个将会把 v 中的每个值按顺序赋值
给每一个变量。 该特性有多种用途。假设需要将某个名称指定某个特定范围的
值。可以使用内建的 range() 函数进行多变量赋值以快速地进
行连续变量赋值。
>>> (MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY,
SATURDAY, SUNDAY) = range(7) ①
>>> MONDAY
②
0
>>> TUESDAY
1
>>> SUNDAY
6
1. 内建的 range() 函数构造了一个整数序列。(从技术上来
说, range() 函数返回的既不是列表也不是元组,而是一个 迭
代器,但稍后您将学到它们的区别。) MONDAY、 TUESDAY、
WEDNESDAY、 THURSDAY、 FRIDAY、 SATURDAY 和 SUNDAY 是您所定
义的变量。(本例来自于 calendar 模块,该短小而有趣的模块
打印日历,有点像 UNIX 程序 cal 。该 calendar 模块为星期数
定义了整数常量。
2. 现在,每个变量都有其值了: MONDAY 为 0, TUESDAY 为 1,
如此类推。
还可以使用多变量赋值创建返回多值的函数,只需返回一个包
含所有值的元组。调用者可将返回值视为一个简单的元组,或
将其赋值给不同的变量。