Python(十一)变量多次赋值

news2025/1/17 21:39:41

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。
☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无论你是学生、职场人士还是对编程感兴趣的爱好者,都能从中受益。跟着我的学习笔记一起学习python吧。
🌙专栏目标:本专栏的目标是帮助我自己记忆、方便回顾所学知识以及帮助其他想学习python的小伙伴掌握Python编程语言的基本概念和技巧,并逐步提高我们的编程能力。通过这个专栏,我们将学会如何编写Python代码,理解各种数据类型、控制结构和函数,掌握常用的Python模块和库,以及应用Python解决实际问题。

⭐️ 专栏主要内容: 主要学习python的开发环境搭建;Python的基础知识,包括变量、数据类型、条件语句和循环等;python的数据结构和算法;python的函数和模块;python的文件处理等。
🌴 专栏说明 :如果文章知识点有错误的地方,欢迎大家随时在文章下面评论,我会第一时间改正。让我们一起学习,一起进步。
💑专栏主页:从零开始的Python入门之路

在这里插入图片描述

当我们使用变量时,有时候需要多次给变量赋值。这种操作被称为变量的多次赋值。多次赋值允许我们在程序中更新变量的值,从而实现动态的数据处理和逻辑控制。下面我们来详细学习一下变量的多次赋值。

文章目录

  • 变量多次赋值
  • 多次赋值后,内存地址改变

变量多次赋值

在Python中,变量的多次赋值非常简单。我们可以通过赋值运算符(=)将新的值赋给一个已经存在的变量。每次赋值都会更新变量的值,并且可以根据需求在不同的位置进行多次赋值操作。

下面是一个示例代码,展示了变量的多次赋值的用法:

# 定义一个变量
x = 10

# 第一次赋值
x = 20
print(x)  # 输出结果为 20

# 第二次赋值
x = 30
print(x)  # 输出结果为 30

在上述示例中,我们首先定义了一个变量x并将其赋值为10。然后,我们分别进行了两次赋值操作。第一次赋值将x的值更新为20,第二次赋值将x的值更新为30。每次赋值后,我们使用print函数输出变量x的值,以验证赋值操作是否成功。

变量的多次赋值使得我们能够在程序中灵活地修改变量的值,从而满足不同的需求。在实际应用中,我们可以利用多次赋值来跟踪变量的状态变化,进行条件判断和循环控制,实现复杂的数据处理和算法逻辑。

需要注意的是,变量的多次赋值会覆盖之前的值。每次赋值都会将新的值存储到变量中,并替代之前的值。因此,在进行多次赋值操作时,要确保每次赋值都符合预期,不会导致数据丢失或逻辑错误。

多次赋值后,内存地址改变

在 Python 中,多次赋值给同一个变量时,每次赋值后的内存地址都是不同的。这是因为 Python 中的变量是指向对象的引用,而不是直接存储值。

下面是修正后的示例代码,展示了多次赋值后变量内存地址的变化:

x = 10
print(id(x))  # 输出结果为内存地址A

x = 20
print(id(x))  # 输出结果为内存地址B

x = 30
print(id(x))  # 输出结果为内存地址C

在这里插入图片描述
运行结果如上图所示,可以看到三次打印出的内存地址是不一样的;

运行结果解释:

  • 第一个print(id(x))输出结果为内存地址140718561748040,表示变量x指向的对象的内存地址。
  • 第二个print(id(x))输出结果为内存地址140718561748360,表示变量x指向的对象已经更新为新的值,并存储在不同的内存地址上。
  • 第三个print(id(x))输出结果为内存地址140718561748680,表示变量x指向的对象又一次更新为新的值,并存储在另一个不同的内存地址上。

由此可见,每次赋值都会创建一个新的对象,并将变量指向该对象的内存地址。这是因为在 Python 中,整数等不可变类型的对象在进行赋值时,会创建新的对象,并将变量指向新对象的内存地址。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/755323.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【hadoop】部署hadoop的本地模式

hadoop的本地模式 本地模式的特点部署本地模式测试本地模式是否部署完成 本地模式的特点 没有HDFS、也没有Yarn只能测试MapReduce程序,作为一个普通的Java程序处理的数据是本地Linux的文件一般用于开发和测试 部署本地模式 进入该路径 /root/training/hadoop-2.7…

吴恩达机器学习2022-Jupyter

1 可选实验室: Python、 NumPy 和矢量化 简要介绍本课程中使用的一些科学计算。特别是 NumPy 科学计算包及其与 python 的使用。 2 目标 在这个实验室里将回顾课程中使用的 NumPy 和 Python 的特性。 Python 是本课程中使用的编程语言。NumPy 库扩展了 python 的基本功能&a…

mac 如何批量修改图片名称

mac 如何批量修改图片名称?很多使用mac电脑的小伙伴一直有这样一个疑问,怎么在电脑上一次性的批量修改大量图片的名称,很多小伙伴在电脑上整理图片的时候都需要批量重命名,批量处理的功能可以让我们节省不少的时间和精力&#xff…

抖音seo怎么选择关键词

要查找抖音的关键词,以进行SEO优化,可以按照以下步骤进行: 1. 关键词分析与筛选: 首先,你需要确定你的目标受众和内容类型。了解你的目标用户是谁,他们可能会搜索什么样的内容。然后,使用关键…

虾皮一面:手写一个Strategy模式(策略模式)

说在前面 在40岁老架构师 尼恩的读者交流区(50)中,最近有指导一个小伙伴面试架构师,面试的公司包括虾皮、希音、美团等大厂,目标薪酬50K以上,遇到了一个比较初级的问题: 请手写一个Strategy模式(策略模式…

基于物联网技术的养老院管理系统设计与实现_kai

基于物联网技术的养老院管理系统设计与 实现 摘 要 随着我国老年人口数量的逐年增加,人口抚养比也在迅速攀升,越来越多的老年人将走 出家门进入养老院安度自己的晚年。同时国家和地方也相继出台了加快发展老龄事业的政策 方针,作为机构养老…

Shell之循环语句 —— For 实验

循环 循环就是重复执行一段代码的结构,通过循环可在满足一定的条件下,多次执行相同的代码。 循环语句:循环体 —— 代码的总结构 循环条件 —— 当循环条件满足时,循环体代码才会被执行,否则条件不满足…

SpringCloud Alibaba——Nacos中的Distro协议

一、Nacos中的Distro协议 Nacos 每个节点自己负责部分的写请求。每个节点会把自己负责的新增数据同步给其他节点。每个节点定时发送自己负责数据的校验值到其他节点来保持数据一致性每个节点独立处理读请求,及时从本地发出响应。新加入的 Distro 节点会进行全量数据…

【高并发网络通信架构】3.引入IO多路复用(select,poll,epoll)实现高并发tcp服务端

目录 一,往期文章 二,基本概念 IO多路复用 select 模型 poll 模型 epoll 模型 select,poll,epoll 三者对比 三,函数清单 1.select 方法 2.fd_set 结构体 3.poll 方法 4.struct pollfd 结构体 5.epoll_cre…

前端uni-app自定义精美全端复制文本插件,支持全端文本复制插件 可设置复制按钮颜色

随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。 通过组件化开发,可以有效实现…

读数据压缩入门笔记07_自适应统计编码

1. 位置对熵的重要性 1.1. 为了计算概率总需要多遍历一次数据集,而在计算出整个数据集中各符号的出现概率后,还要继续处理这些数值 1.1.1. 如果是相对较小的数据集,那么这些就不是什么问题 1.2. 随着要压缩的数据集变大,统计编…

Python异常值检测——案例分析

目录 1.单个变量异常值检测 2. 双变量关系中的异常值检测 3. 使用线性回归来确定具有重大影响的数据点 4. 使用k最近邻算法找到离群值 5. 使用隔离森林算法查找异常 1.单个变量异常值检测 如果某个值离平均值有多个标准偏差,并且远离近似标准正态分布的值&#…

Office如何通过VSTO进行WORD插件开发?

文章目录 0.引言1.工具准备2.WORD外接程序创建和生成3.外接程序生成并使用 0.引言 VSTO(Visual Studio Tools for Office )是VBA的替代,是一套用于创建自定义Office应用程序的Visual Studio工具包。VSTO可以用Visual Basic 或者Visual C#扩展…

在 3ds max 中创建逼真的镜像材质

推荐: NSDT场景编辑器助你快速搭建可二次开发的3D应用场景 选项 1.平面镜面材料 步骤 1 首先,我们需要包含镜像对象和一个或多个镜像对象的场景。您可以在此处下载本教程中使用的场景,也可以使用您自己的场景和对象。对于第一个镜像选项&…

Unreal Engine 与 Blender - 比较指南

虚幻引擎和 Blender 是游戏开发人员中最常用的两种软件,它们在游戏开发工作流程中都有自己的用途和地位。作为进入视频游戏行业的初学者,可能很难从数十种软件中筛选找到最适合您需求的一款。希望本指南能够缓解这一困难并帮助您决定选择哪个软件。 虚幻…

【c++源码】瑞佳飞飞彩虹端分享老飞飞源码

里面功能包含。离线摆摊,内挂,宠物系统,宠物进阶,任意商店,回收装备,模型查看,个人排行榜,物品分解,全物品升级,钥匙开箱子,外观变更,…

电商数据采集方式有哪些

不管是做渠道管控、还是价格监测,数据采集都是基础,只有数据准确了,品牌才能更好的管控乱价、治理渠道。同时当品牌有数据分析需求时,对数据采集的要求也会越高。 力维网络有自主开发的数据采集监测系统,可为品牌提供多…

SpringCloud整合Sentinel

文章目录 1、Sentinel介绍2、安装Sentinel控制台3、微服务整合Sentinel 1、Sentinel介绍 阿里开源的流量控制组件官网:https://sentinelguard.io/zh-cn/index.html承接了阿里双十一大促流量的核心场景,如秒杀、消息削峰填谷、集群流量控制、实时熔断下游…

关于Java的网络编程

网络的一些了解 网络通信协议 链路层:链路层是用于定义物理传输通道,通常是对某些网络连接设备的驱动协议,例如针对光纤、网线提供的驱动。网络层:网络层是整个TCP/IP协议的核心,它主要用于将传输的数据进行分组&…

【EXCEL】数据录入的快捷键和正确格式

目录 0.环境 1.内容概述 2.具体内容 2.1数据录入换行换列的快捷键(标准的数据输入方式) 2.2日期的正确格式和使用(标准日期格式与长日期) 2.2.1 标准日期 2.2.2 长日期 2.2.3 显示当前日期和时间的快捷键 2.3百分比的正确…