同时赋多个值
以下是一种很酷的编程捷径:在 Python 中,可使用元组来一次赋多值。
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,
如此类推。
还可以使用多变量赋值创建返回多值的函数,只需返回一个包含所有值的元组。调用者可将返回值视为一个简单的元组,或将其赋值给不同的变量。或者直接使用等号进行多重赋值,如下
a,b,c = 4,6,9
输出
In [2]: a Out[2]: 4 In [3]: b Out[3]: 6 In [4]: c Out[4]: 9 In [5]: