Python 教程之运算符(8)—— Inplace vs Standard 运算符

简介: Python 教程之运算符(8)—— Inplace vs Standard 运算符

普通运算符执行简单的分配工作。另一方面,Inplace 运算符的行为类似于普通运算符,只是它们在可变和不可变目标的情况下以不同的方式运行。

  • _add_方法进行简单的加法,接受两个参数,返回总和,并将其存储在另一个变量中,而不修改任何参数。
  • 另一方面, iadd 方法也接受两个参数,但它通过将总和存储在其中来对传递的第一个参数进行就地更改。由于在此过程中需要对象突变,因此不可变目标(例如数字、字符串和元组)不应具有 iadd 方法
  • 普通运算符的“add()” 方法,实现“ a+b ”并将结果存储在提到的变量中。
  • Inplace 运算符的“iadd()” 方法,如果存在“ a+=b ”(即在不可变目标的情况下,它不存在),则实现“a+=b”并更改传递参数的值。但如果不是,则执行“a+b”

案例 1不可变目标。 

在不可变目标中,例如数字、字符串和元组。就地运算符的行为与普通运算符相同,即只进行赋值,不修改传递的参数。

# 用于演示不可变目标中的 Inplace 和 Normal 运算符之间区别的 Python 代码
# 导入算子处理算子操作
import operator
# 初始化值
x = 5
y = 6
a = 5
b = 6
# 使用 add() 添加传递的参数
z = operator.add(a,b)
# 使用 iadd() 添加传递的参数
p = operator.iadd(x,y)
# 打印修改后的值
print ("使用 normal 运算符添加后的值: ",end="")
print (z)
# 打印修改后的值
print ("使用 Inplace 运算符添加后的值: ",end="")
print (p)
# printing value of first argument
# value is unchanged
print ("使用 normal 运算符的第一个参数的值: ",end="")
print (a)
# printing value of first argument
# value is unchanged
print ("使用 Inplace 运算符的第一个参数的值: ",end="")
print (x)

输出:

使用 normal 运算符添加后的值: 11
使用 Inplace 运算符添加后的值: 11
使用 normal 运算符的第一个参数的值: 5
使用 Inplace 运算符的第一个参数的值: 5

案例 2可变目标

Inplace 运算符在可变目标(例如列表和字典)中的行为与普通运算符不同。更新和分配都在可变目标的情况下执行。

# Python 代码演示可变目标中的 Inplace 和 Normal 运算符之间的区别
# 导入算子处理算子操作
import operator
# 初始化列表
a = [1, 2, 4, 5]
# 使用 add() 添加传递的参数
z = operator.add(a,[1, 2, 3])
# 打印修改值
print ("使用 normal 运算符添加后的值: ",end="")
print (z)
# 第一个参数值的打印值不变
print ("使用 normal 运算符的第一个参数的值: ",end="")
print (a)
# 使用 iadd() 添加传递的参数执行 a+=[1, 2, 3]
p = operator.iadd(a,[1, 2, 3])
# 打印修改值
print ("使用 Inplace 运算符添加后的值: ",end="")
print (p)
# 第一个参数值的打印值已更改
print ("使用 Inplace 运算符的第一个参数的值: ",end="")
print (a)

输出:

使用 normal 运算符添加后的值: [1, 2, 4, 5, 1, 2, 3]
使用 normal 运算符的第一个参数的值: [1, 2, 4, 5]
使用 Inplace 运算符添加后的值 [1, 2, 4, 5, 1, 2, 3]
使用 Inplace 运算符的第一个参数的值: [1, 2, 4, 5, 1, 2, 3]
目录
相关文章
|
27天前
|
JSON 数据可视化 API
Python 中调用 DeepSeek-R1 API的方法介绍,图文教程
本教程详细介绍了如何使用 Python 调用 DeepSeek 的 R1 大模型 API,适合编程新手。首先登录 DeepSeek 控制台获取 API Key,安装 Python 和 requests 库后,编写基础调用代码并运行。文末包含常见问题解答和更简单的可视化调用方法,建议收藏备用。 原文链接:[如何使用 Python 调用 DeepSeek-R1 API?](https://apifox.com/apiskills/how-to-call-the-deepseek-r1-api-using-python/)
|
7天前
|
大数据 开发者 C++
Python语法糖详解教程
《Python语法糖详解教程》介绍了编程语言中的“语法糖”,即通过特殊语法形式简化代码,使代码更简洁、易读和高效。文章详细解析了列表推导式、字典推导式、元组解包、条件表达式、with语句和装饰器等核心语法糖,并提供了具体示例和最佳实践指南。通过这些技巧,开发者可以在保持底层功能不变的前提下,显著提升开发效率和代码质量。
29 8
|
2月前
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
342 13
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
9天前
|
C语言 Python
Python学习:内建属性、内建函数的教程
本文介绍了Python中的内建属性和内建函数。内建属性包括`__init__`、`__new__`、`__class__`等,通过`dir()`函数可以查看类的所有内建属性。内建函数如`range`、`map`、`filter`、`reduce`和`sorted`等,分别用于生成序列、映射操作、过滤操作、累积计算和排序。其中,`reduce`在Python 3中需从`functools`模块导入。示例代码展示了这些特性和函数的具体用法及注意事项。
|
17天前
|
知识图谱 Python
Python入门:4.Python中的运算符
Python是一间强大而且便捷的编程语言,支持多种类型的运算符。在Python中,运算符被分为算术运算符、赋值运算符、复合赋值运算符、比较运算符和逻辑运算符等。本文将从基础到进阶进行分析,并通过一个综合案例展示其实际应用。
|
3月前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
101 8
|
2天前
|
机器学习/深度学习 存储 设计模式
Python 高级编程与实战:深入理解性能优化与调试技巧
本文深入探讨了Python的性能优化与调试技巧,涵盖profiling、caching、Cython等优化工具,以及pdb、logging、assert等调试方法。通过实战项目,如优化斐波那契数列计算和调试Web应用,帮助读者掌握这些技术,提升编程效率。附有进一步学习资源,助力读者深入学习。
|
2天前
|
机器学习/深度学习 数据可视化 TensorFlow
Python 高级编程与实战:深入理解数据科学与机器学习
本文深入探讨了Python在数据科学与机器学习中的应用,介绍了pandas、numpy、matplotlib等数据科学工具,以及scikit-learn、tensorflow、keras等机器学习库。通过实战项目,如数据可视化和鸢尾花数据集分类,帮助读者掌握这些技术。最后提供了进一步学习资源,助力提升Python编程技能。
|
2天前
|
设计模式 机器学习/深度学习 前端开发
Python 高级编程与实战:深入理解设计模式与软件架构
本文深入探讨了Python中的设计模式与软件架构,涵盖单例、工厂、观察者模式及MVC、微服务架构,并通过实战项目如插件系统和Web应用帮助读者掌握这些技术。文章提供了代码示例,便于理解和实践。最后推荐了进一步学习的资源,助力提升Python编程技能。
|
4天前
|
数据采集 搜索推荐 C语言
Python 高级编程与实战:深入理解性能优化与调试技巧
本文深入探讨了Python的性能优化和调试技巧,涵盖使用内置函数、列表推导式、生成器、`cProfile`、`numpy`等优化手段,以及`print`、`assert`、`pdb`和`logging`等调试方法。通过实战项目如优化排序算法和日志记录的Web爬虫,帮助你编写高效稳定的Python程序。

热门文章

最新文章