当前位置: 首页 > news >正文

Python 入门

扩展作业是如何运作的?


增广赋值将二元操作与赋值结合为一步。它取一个变量,对其应用另一个值的操作,然后将结果存回同一个变量。

如果你熟悉像JavaScript这样的语言,你可能听说过加法赋值算符(+=)或减法赋值(-=),以及其他。这些在Python里也有。唯一的区别是它们被称为增强作业。

扩展作业的基本语法如下:

variable <operator>= value


哪种方式更高效:

variable = variable <operator> value


例如,这里有一个使用增强赋值对现有变量添加的示例:5

my_var = 10 my_var += 5 print(my_var) # 15


这里有同样的内容,但没有增强赋值:

my_var = 10 my_var = my_var + 5 print(my_var) # 15


增强赋值的优点在于它提供了一种简洁易读的方式来更新变量值而不重复变量名称。反过来,这减少了冗余和可能因拼写错误等原因产生的错误。

每个操作员都可以使用增强赋值。我们已经看过加法赋值算子(+=),接下来看看其他操作。

减法赋值算符(-=)从左变量中减去右操作数,并存储左变量的差值:

count = 14 count -= 3 print(count) # 11


乘法赋值算子(*=)将左变量乘以右操作数,并将乘积存储回左变量:

product = 65 product *= 7 print(product) # 455


除法赋值算符(/=)将左变量除以右变量,并将结果存储回左变量:

price = 100 price /= 4 print(price) # 25.0


地板除法算子(//=)将左变量除以右变量,并将结果存储回左变量:

total_pages = 23 total_pages //= 5 print(total_pages) # 4


模赋值算子(%=)计算左变量除以右变量的余数,并将其存回左变量中:

bits = 35 bits %= 2 print(bits) # 1


指数赋值算子(**=)将左变量提升为右变量的幂,并将结果存储回左变量:

power = 2 power **= 3 print(power) # 8


你也可以用一些带字符串的增强赋值算子。例如,加法赋值算符使字符串的连接变得容易:

greet = 'Hello' greet += ' World' print(greet) # Hello World


乘法赋值算符可用于重复字符串:

greet = 'Hello' greet *= 3 print(greet) # HelloHelloHello


其他增强作业在字符串中使用时会抛出 a:TypeError

greet = 'Hello' greet -= ' World' print(greet) # TypeError: unsupported operand type(s) for -=: 'str' and 'str' greet = 'Hello' greet /= 'World' print(greet) # TypeError: unsupported operand type(s) for /=: 'str' and 'str'


如果你想知道增减运算符(和)在Python中是否有效,它们是不行的。这是因为 Python 有意避免 C 风格的增减快捷方式,以保持语言清晰和显式。++--

你可以直接写成 ,这样很明显你是在将 的值增加 。x++x += 1x1

用 Python 写作只是应用两次一进制加,不会递增任何东西:++x

my_var = 5 print(+my_var) # 5 print(++my_var) # 5 print(+++my_var) # 5 my_var += 1 print(my_var) # 6
http://www.jsqmd.com/news/672939/

相关文章:

  • LVGL 8.x 集成FreeType矢量字体:启动闪退的排查与修复实录
  • ESP-SR语音识别框架:5分钟构建离线智能语音交互系统
  • 图文情感分析实战:用BERT+ResNet和交叉多头注意力(CMA)搞定MVSA数据集
  • 文脉定序部署教程:使用Triton Inference Server统一管理多版本重排序模型
  • MAA明日方舟自动化助手:新手必看的10个常见问题解答
  • 省成本反被坑?聊聊DCDC电源里电感选型那些‘隐藏参数’:SRF与寄生电容
  • Qwen3.5-4B推理模型应用案例:打造你的个人学习助手与代码解释器
  • 3步玩转BabelDOC:让学术PDF翻译像复制粘贴一样简单
  • Chapter 002. 线性回归
  • AI Agent Harness Engineering 在金融:风控、合规与可解释性挑战
  • 大厂Java面试实录:Spring Boot/Cloud、Kafka、Redis、K8s 与 Spring AI(RAG/Agent)三轮连环问
  • 告别黑盒子:给你的树莓派/香橙派LCD屏加上内核调试终端(含fbcon配置与inittab修改)
  • 景区气象监测站
  • Go并发架构下的漫画批量下载引擎:comics-downloader深度技术解析
  • 用 Agent 自动化数据处理:从 2 小时到 15 分钟的效率革命
  • Ryzen SDT终极指南:免费开源工具实现AMD处理器深度调试与超频
  • 3步解锁加密音频:实现全平台自由播放的终极方案
  • AI印象派艺术工坊提速技巧:图像分块处理部署优化教程
  • 告别重复劳动:青龙面板自动化签到工具解放你的数字生活
  • UDS诊断协议(十六)详解故障码DTC的重要参数-故障检测计数器FDC
  • 从PS2.0数据集出发:聊聊自动驾驶中停车位检测的‘脏活累活’与工程挑战
  • Steam成就管理器:5分钟掌握游戏成就自由掌控的终极指南
  • 长沙金海中学答题:中天电子实现精准调控
  • C# 14 AOT部署Dify客户端,你还在用dotnet publish --self-contained?这6个被微软文档隐藏的--aot选项正在重构企业交付标准
  • 百度网盘秒传链接网页工具:3步搞定全平台文件极速分享
  • C# Blazor面试必考TOP12题型深度拆解(含MAUI互操作、JS隔离沙箱、SignalR流式响应全场景代码)
  • OpenCore Auxiliary Tools:3步搞定黑苹果配置的终极图形化工具
  • 从‘浪费生命’到‘轻松驾驭’:我的NRF24L01/SI24L01调试心路与替代方案盘点
  • STM32 RTC实战:从GPS模块获取UTC时间,自动校准并显示北京时间的全流程指南
  • 百度网盘下载加速全攻略:3步解锁满速下载的免费开源方案