python变量赋值方法(可变与不可变)

Python 是一门面向对象的编程语言,所有的数据类型都被视为万物皆对象。Python 中的变量赋值是名字(变量)和对象之间的绑定,其中对象包括可变和不可变对象。在介绍 Python 变量赋值方法(可变与不可变)之前,我们需要先了解 Python 中的对象有哪些类型和可变与不可变对象的区别。

Python 中的对象类型大致有以下几种:

  1. 数字类型(int、float、bool、complex):不可变对象;
  2. 序列类型(str、tuple、range、list):可变和不可变对象;
  3. 映射类型(dict):可变对象;
  4. 集合类型(set、frozenset):可变和不可变对象;
  5. 嵌套类型(混合多个类型的数据结构)。

接下来我们来详细讲解“Python 变量赋值方法(可变与不可变)”。

Python 中的可变和不可变对象

不可变对象(Immutable Object)

Python 中的不可变对象一旦创建就不可以改变,如果改变了对象,只能创建一个新的对象。

Python 中的不可变对象有:

  1. 数字类型:int、float、bool、complex
  2. 字符串类型:str
  3. 元组类型:tuple

可变对象(Mutable Object)

Python 中的可变对象在创建之后,可以更改自身的值,但不会更改其内存地址。

Python 中的可变对象有:

  1. 列表类型:list
  2. 集合类型:set
  3. 字典类型:dict

Python 中的变量赋值方法

Python 中的变量赋值往往有多种方法,下面介绍两种常用方法。

赋值语句(Assignment statement)

Python 的赋值语句使用 = 进行赋值,变量名和对象之间建立了绑定关系。

示例代码:

>>> age = 22
>>> name = "Tom"
>>> pi = 3.14
>>> student_info = {"name": "Tom", "age": 22, "school": "xxx"}
>>> print(age, name, pi, student_info)
22 Tom 3.14 {'name': 'Tom', 'age': 22, 'school': 'xxx'}

对象方法(Object method)

Python 中的可变对象可以通过对象方法更改自身的值,这种赋值方式是在原有对象的基础之上进行修改。

示例代码:

# list 类型的可变对象
>>> alist = [1, 2, 3, 4, 5]
>>> alist.append(6)
>>> alist
[1, 2, 3, 4, 5, 6]

# dict 类型的可变对象
>>> adict = {"name": "Tom", "age": 22}
>>> adict["school"] = "xxx"
>>> adict
{'name': 'Tom', 'age': 22, 'school': 'xxx'}

注意:

  1. 不可变对象在创建之后无法更改,如果更改必须创建一个新的对象并重新绑定;
  2. 可变对象可以通过对象方法更改自身的值,但不会改变其内存地址。

以上是 Python 变量赋值方法的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python变量赋值方法(可变与不可变) - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • Win10系统自带输入法卡顿怎么办? Win10系统输入法卡顿的故障分析及解决方法

    Win10系统自带输入法卡顿怎么办? 本文将介绍Win10系统自带输入法卡顿的故障分析及解决方法的完整攻略,包括故障原因、解决方法、示例说明等。 1. 故障原因 Win10系统自带输入法卡顿的原因可能有以下几种: 系统资源占用过高; 输入法设置不当; 输入法软件损坏; 病毒感染等。 2. 解决方法 针对不同的故障原因,可以采取以下解决方法: 2.1 释放系统…

    云计算 2023年5月16日
    00
  • Python 如何创建一个简单的REST接口

    创建一个简单的 REST 接口可以通过 Python 中的 Flask 框架来实现。下面是创建一个简单 REST 接口的步骤: 第一步:安装 Flask 在终端中使用以下命令安装 Flask: pip install flask 第二步:创建一个 Flask 应用 在 Python 中创建一个 .py 文件,添加以下内容以创建一个简单的 Flask 应用程序…

    云计算 2023年5月18日
    00
  • Karmada 多云容器编排引擎支持多调度组,助力成本优化

    摘要:Karmada 社区也在持续关注云成本的管理,在最近发布的 v1.5 版本中,支持用户在分发策略 PropagationPolicy/ClusterPropagationPolicy 中设置多个集群调度组,实现将业务调度到成本更低的集群组中去。 本文分享自华为云社区《Karmada 多云容器编排引擎支持多调度组,助力成本优化!》,作者:华为云云原生团队…

    云计算 2023年4月22日
    00
  • TKE qGPU 通过 CRD 管理集群 GPU 卡资源

    作者 刘旭,腾讯云高级工程师,专注容器云原生领域,有多年大规模 Kubernetes 集群管理经验,现负责腾讯云 GPU 容器的研发工作。 背景 目前 TKE 已提供基于 qGPU 的算力/显存强隔离的共享 GPU 调度隔离方案,但是部分用户反馈缺乏 GPU 资源的可观测性,例如无法获取单个 GPU 设备的剩余资源,不利于 GPU 资源的运维和管理。在这种背…

    2023年4月9日
    00
  • 景安网络:根植中原厚土发力云计算巅峰

    景安网络:根植中原厚土发力云计算巅峰 景安网络是一家专注于云计算、大数据、人工智能等领域的企业,总部位于河南省郑州市。本文将详细讲解景安网络的发展历程、业务领域和技术优势,包括以下内容: 公司概述 业务领域 技术优势 示例说明 公司概述 景安网络成立于2012年,是一家专注于云计算、大数据、人工智能等领域的企业。公司总部位于河南省郑州市,拥有一支高素质的技术…

    云计算 2023年5月16日
    00
  • “云计算技能第一次在线练兵”精彩纷呈!欢迎继续关注后续直播!

    2月19日下午2点,“云计算技能第一次在线练兵”直播和大家如约见面,热烈的互动,激烈的排名······云创大数据的讲师团队带领大家共同领略了云计算练兵的魅力。 在直播间,我们首先了解到本次练兵的规则、奖励机制以及练兵平台等,对整个练兵有了更为全面的认识。同时,在直播过程中,选手的在线操作得以实况呈现,包括得分趋势、得分事件等,并得到一一解说,分析得分点与失分…

    云计算 2023年4月12日
    00
  • 详解数据库中跨库数据表的运算

    数据库中跨库数据表的运算是指在不同的数据库之间进行表格之间的操作。如果想要进行跨库操作需要用到数据库模式或链接操作符号。以下是详细的攻略解释。 1. 链接两个库中的表 想要在两个不同库中的表格进行操作,首先需要我们将这两个库连接起来。连接两个库可以使用联合查询和UNION操作符。 1.1 联合查询 联合查询是通过SQL语句使用UNION操作符将两个独立的SE…

    云计算 2023年5月18日
    00
  • 阿里云MVP Meetup:《云数据·大计算:海量日志数据分析与应用》之《数据分析展现:可视化报表及嵌入应用》篇…

    实验背景介绍 本手册为阿里云MVP Meetup Workshop《云计算·大数据:海量日志数据分析与应用》的《数据分析展现:可视化报表及嵌入应用》篇而准备。主要阐述如何使用Quick BI制作报表,将前面几个实验处理分析得来的数据进行有效的展现和洞察。 《数据加工:用户画像》实验中的结果表数据已经事先导入RDS中,表名为rpt_user_info_all_…

    云计算 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部