学习
实践
活动
专区
工具
TVP
写文章

Python编程第7课,赋值语句高阶练习,4种方法交换两个变量的值

【Python编程第1-6课回顾】

Python编程第1课,认识IDLE ,编写保存运行第1个程序

Python编程第2课,打印输出函数print,17个案例详解5个参数

Python编程第3课,学习变量、表达式与赋值语句,请你记住这3点

Python编程第4课,从结绳计数到计数器,强化变量、赋值语句使用

Python编程第5课:累加器,变量与赋值进阶练习

Python编程第6课:15个编程好习惯之一,使用注释符

前面6课,我们主要是学习并巩固练习Python的变量、表达式、赋值语句以及输出函数。本节课我们继续进行赋值语句的高阶练习,熟练掌握Python中交换两个变量值的4种方法。

第1种方法:使用元组交换(Python特有的语法)

格式:a,b=b,a

如图7.1所示

图7.1

这个方法是直接将a, b两个变量放到元组中,再通过元组按照index进行赋值的方式进行重新赋值给两个变量。请注意此方法只能在Python中使用。

备注:Python 的元组与列表类似,不同之处在于元组的元素不能修改。在之后的教程中再来讲述。

第2种方法:使用中间变量交换(适合于所有程序语言)

如图7.2所示

图7.2

这个方法是借助临时变量temp,先将变量a的值赋值给temp,再将变量b的值赋给变量a,最后将temp的值赋给变量b,变成变量a,b值的交换。

第3种方法:通过加减运算完成交换

如图7.3所示

图7.3

这种方法有一个局限性,就是a=a+b时,可能超出该类型的取值范围。

第4种方法:通过异或运算交换

如图7.4所示

图7.4

备注:

1、异或运算符^在数字6的上面,请在英文状态下,按住shift键不松手,再按数字6即可得到;

2、异或运算的基本方法,是将10进制数字转换成2进制数,再按照1^1=0,0^0=0,1^0=1,0^1=1的运算规则进行计算。例如a = 0011 1100,b = 0000 1101,则a^b=0011 0001;

3、异或运算是Python位运算的一种,位运算还有与、或、取反、左移动、右移动5种运算,这个在后面的教程再介绍。

综上所述,这4种方法都可用于在Python中完成两个变量值的交换,大陈推荐你使用第1种方法,最简单、直白。

附:Python编程第6课练习题

1.计算机能直接识别的程序是(   )

A. Python语言编写的源程序    B. C语言编写的源程序

D. 机器语言编写的程序           D. 各种高级语言编写的源程序

2.阅读程序写结果

x=123

y=200

x=y-x

y=y-x

x=x+y

print("x=",x,"y=",y)

3.完善程序

一个三位数,个数上的数字是2,十位上的数比个位上的数大2,百位上的数是十位上的数的2倍,这个三位数是多少?

如图7.5所示,请在第4、6行补充程序。

图7.5

答案将在下期Python编程第8课中公布,敬请期待。如果你做出来了,请在评论区留下答案。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200620A0OF7000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

关注

腾讯云开发者公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券