小卜妞~ 2021-03-03 15:31 采纳率: 0%
浏览 94

发现python赋值的一个特性,同行赋值可以这样?

a = 3
b = 5
a, b = a + b, a
print(a, b)

结果是:a=8,b=3

本以为如此,a被a+b赋值之后,再进行b=a的赋值,还用了中间变量,结果python居然有这样的特性。在此记录一下

  • 写回答

5条回答 默认 最新

  • 天际的海浪 2021-03-03 15:53
    关注

    a + b, a 实际上是创建一个元组 (8,3) 作为中间结果。

    然后再把这个(8,3)元组解包分别赋值给a和b。

    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分