python元组赋值和拆包

2025-11-25 13:40:14

1、首先我们看看python的元组的赋值

a=(1,2)print(a)

输出2

python元组赋值和拆包

2、使用tuple 给多个变量赋值,如下所示

a,b,c,d=(5,3,2,1)print(a)print(b)

输出5,3

python元组赋值和拆包

3、也可以赋值成多个元组形式,如下所示;

A,B,C,D=[(x,y) for x in '90' for y in 'db']print(A)print(B)print(C)print(D)

输出结果:

('9', 'd')

('9', 'b')

('0', 'd')

('0', 'b')

python元组赋值和拆包

python元组赋值和拆包

4、步骤3中假如我们只想输出每个元组数字部分,可以使用

alls=A,B,C,D=[(x,y) for x in '90' for y in 'db']print(A)print(B)print(C)print(D)for c,_ in alls:    print(c)

输出结果:9,9,0,0

具体如下图所示

python元组赋值和拆包

python元组赋值和拆包

5、也可以用

for c in alls:    print('%s:%s' %c)

输出

9:d

9:b

0:d

0:b

来改变元组输出形式,如下所示

python元组赋值和拆包

python元组赋值和拆包

6、元组的拆包,如下我们把上面的元组赋值给四个变量

n,m,l,k=alls然后我们输出其中两个值print(n)print(k)

输出结果:

('9', 'd')

('0', 'b')

具体如下图

python元组赋值和拆包

python元组赋值和拆包

7、我们在来看看传入形式*args

a=(9,81)print divmod(a)

假如我们如上传入a将会报错:

Traceback (most recent call last):

  File "C:/Users/king/PycharmProjects/baidu/blog/tests.py", line 101, in <module>

    print divmod(a)

TypeError: divmod expected 2 arguments, got 1

因为divmod需要两个参数

python元组赋值和拆包

8、我们改变下传入参数形式

a=[9,81]print divmod(*a)

输出:

(0, 9),可以看出*a实现了传入元组中两个参数

注:python divmod() 函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)

python元组赋值和拆包

python元组赋值和拆包

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢