python变量赋值方式_Python进阶之路系列一之变量赋值

首先,通过一个问题引入本文要讲的内容,Python中如何交换两个变量的值?

不要跟我说你还在用引入中间变量的方法来交换两个变量的值,那还是我们简洁强大的Python么!

mR6o2KYnHynfKtcZ8Xqo7I58VNuJba=pDWy31OXyX4u=j1531023889871.jpeg

交换两个变量

Python中的序列赋值给多个变量

任何序列(或是可迭代对象)都可以通过简单的赋值语句(=)赋值给多个变量。

Tips:变量数必须和序列中元素数一致。

示例代码如下:

lPnX2IvODlR0sDXHKEL7b6K6qbqfTsPEklWrqzjU09ROg1531023891701.jpeg

如果变量数与序列中元素数不一致,则报错:

=OMctCSfZgCcFRnduC6uoWF1dGZoYRHp4WN0NoTg06bGV1531023893260.jpeg

扩展:

实际上,这种给多变量赋值可以用在任何可迭代对象上,而不仅仅是列表或元组。包括字符串,文件对象,迭代器和生成器。

示例代码如下:

PfbHkH6gie8kRqcc0EorbA8lNEJDTSah8nWv1tz1Zvt9D1531023894788.jpeg

如果想丢弃一些变量,用下划线(相当于没有变量名)接收变量。

示例代码如下:

QbhF51x9aUg6wXNmovwzWsp1=K4RTYCYoAQIgdISZuXNs1531023896408.jpeg

星号(*)表达

用星号(*)表达式可以解决上述序列中元素数与变量数不一致的报错。星号(*)表达式用来接收不确定个数或任意个数元素的可迭代对象。星号表达式创建的变量永远都是列表类型。

例如,常见的分数计算中去除第一个和最后一个取平均值。

W8GnigMb05pP8hEgxU2qADtyQyYStdeO7uW5UnRBeNPMU1531023897650.jpeg

星号(*)表达式在字符串操作的时候也会很有用,比如字符串分割:

hdPjrvOF6jeJ=TaCSt2JvPRIBI2rp1CrnQPH8nSZdfYN31531023899627.jpeg

上面讲过,丢弃一个变量用下划线。然而,丢弃一些变量,则可以用星号表达式和下划线结合起来:

riRaJlaN97ggIzR3fTzt402CTH057ngsGF18fazvHSa9C1531023901094.jpeg

星号(*)表达式语法跟列表处理有很多相似之处。如下,切分列表为前后两部分:

YblZgVQ3P53hAuHU8lcKOnLm=U4ZDVCeluOGDSgKIPIKD1531023902713.jpeg

如果你够聪明的话,还能用这种分割语法巧妙地实现递归算法。如下:

rOwi7t9LS9uubm9xjA83aUbeo5KsnpCl9CKO6GjiNZEWf1531023903657.jpeg

最后,由于语言层面的限制,递归并不是Python所擅长的。因此,最后那个递归演示仅仅是个好奇的探索罢了,对此不要太认真。

文章来源于: 气象的爱好者,版权归原作者所有,如有侵权,请联系 guanwang@163yun.com 删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值