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

【Python 入门】(2)Python 语言基础(变量)

【Python 入门】(2)Python 语言基础(变量)


开发语言:Python 3
Python 专栏:入门篇(2)
语言基础:Python 语法特点
语言知识:变量


Python 语言基础——深入理解变量

  • 【Python 入门】(2)Python 语言基础(变量)
  • 一、保留字与标识符
    • 1. 保留字
      • 1.1 什么是保留字
      • 1.2 在 Python Shell 中查看保留字
    • 2. 标识符
      • 2.1 标识符与命名规则
      • 2.2 特殊标识符与中文标识符
  • 二、Python 中的变量
    • 1. 理解 Python 中的变量
    • 2. 变量的声明与赋值
      • 2.1 变量的声明与赋值
      • 2.2 声明与赋值的机制
      • 2.3 变量动态指向性
      • 2.4 连等号赋值与多变量赋值
  • 博客日志:

Python

一、保留字与标识符

在认识变量之前,先来认识几个概念——保留字与标识符。

1. 保留字

1.1 什么是保留字

保留字(又称关键字),顾名思义就是 Python 中被保留的字符。在程序设计时,这些字符不能作为变量、函数、类、模块和其他一切对象的名称来使用(不能作为标识符)。

Python 中的保留字

andasassertbreakclasscontinuedef
delelifelseexceptfinallyforfrom
Falseglobalifimportinislambda
nonlocalnotNoneorpassraisereturn
tryTruewhilewithyield

注意:Python 对英文字母大小写敏感,无论时保留字、标识符还是 Python 中的对象,只要是程序中出现的英文字母均区分大小写。

1.2 在 Python Shell 中查看保留字

在 Python Shell 环境中可以使用以下命令来查看 Python 中的保留字,这很方便,所以不必刻意背记 Python 中的保留字。

在 Python Shell 环境中输入以下代码:

import keyword
keyword.kwlist

执行结果如图所示:

在这里插入图片描述

2. 标识符

2.1 标识符与命名规则

标识符,用来做标识的字符,可以简单的理解成名字。在 Python 中,每个事物都是对象,为了知道是对哪个对象进行操作或是要调用哪个对象,我们使用标识符来标记对象。标识符主要用来标识变量、函数、类、模块和其他对象,作为它们的名称。

命名规则:

  1. 字符组成‌:标识符只能包含字母(a-z, A-Z)、数字(0-9)和下划线(_),不能使用特殊字符(如空格、@, # 等)。‌‌
  2. 开头限制‌:必须以字母或下划线开头,不能以数字开头。‌‌
  3. 大小写敏感‌:大小写字母被视为不同的字符,如 nameNameNAME 被视为不同的标识符。‌‌
  4. 避免关键字‌:不能使用 Python 保留关键字(如 if, for, class, def 等)。

2.2 特殊标识符与中文标识符

在 Python 中,以下划线(_)开头的标识符有特殊意义,一般避免普通标识符使用此类标识符格式。

  1. 以单下划线(_)开头的标识符表示不能被直接访问的类属性,如 _width。另外,也不能通过 from ... import * 进行导入。
  2. 以双下划线(__)开头的标识符表示类的私有成员,如 __add
  3. 以双下划线开头和结尾的是 Python 中专用的表示符,如 __init__(), __name__

在 Python 中允许使用汉字作为标识符,在程序运行时不会报错,但这不符合规范,也不建议使用汉字作为标识符。

zhoeng = 2025
中政 = 2025
集团 = "CHINA"
print(zhoeng + 中政, 集团)

代码执行结果如图:

在这里插入图片描述

二、Python 中的变量

1. 理解 Python 中的变量

核心概念:变量是标签,而不是盒子。在 Python 中,变量是一个指向对象的标签(或名字、引用)。在理解变量时,要摒弃“变量是存储值的盒子”这个传统观念。

更准确的比喻是:

  • 对象(Object):就像是一个实物(例如,一个具体的咖啡杯)。
  • 变量(Variable):就像是贴在这个实物上的标签(Label)。

你可以把多个标签(变量)贴在一个实物(对象)上。实物本身有自己的属性(类型、值、身份),而标签只是用来找到它的方式。

2. 变量的声明与赋值

2.1 变量的声明与赋值

Python 是动态类型语言,这意味着你不需要预先声明变量的类型,类型会在运行时自动推断。

变量的声明与赋值通过等号(=)实现,具体来说是将右边的对象与左边的变量名绑定在一起,语法格式如下:

[变量名] = value

其中,变量名必须是一个合法有效的标识符,并且应尽可能的规范(例如,选用有意义的单词或组合词),value 表示变量值。

例如,创建一个整形变量 number,并赋值为 2025,语句如下:

number = 2025

2.2 声明与赋值的机制

例如我们声明与赋值以下变量:

age = 25            # 整数 (int)
name = "Alice"      # 字符串 (str)
height = 1.75       # 浮点数 (float)
is_student = True   # 布尔值 (bool)

这些代码的运行机制:

  1. 在内存中创建一个对象。
  2. 将这个对象绑定到变量名上(或是说给对象贴上标签)。

例如,age = 25

  1. 在内存中创建一个对象——整数 25
  2. 将这个对象绑定到变量名 age 上。

2.3 变量动态指向性

Python 是动态类型语言,变量的指向性可以随时改变,即你可以随时改变一个变量所指向的对象。

在 Python 中,可以使用内置函数 type() 返回变量类型。

zhoeng = 2025
print(type(zhoeng))	  # <class 'int'>
zhoeng = "CHINA"
print(type(zhoeng))	  # <class 'str'>

2.4 连等号赋值与多变量赋值

在 Python 中支持连等号赋值和多变量赋值,语法格式如下:

连等号赋值:

[变量名1] = [变量名2] = [变量名3] = ... = [变量名n] = value

多变量赋值:

[变量名1] , [变量名2] , [变量名3] , ... , [变量名n] = {value_set}   # 值的集合,变量与值的数量要对应

例如:

# 连等号赋值
age_li = age_zhang = age_liu = 20# 多变量赋值
age , name , height , is_student = {25, "Alice", 1.75, True}

连等号赋值和多变量赋值后续也会再提到,在此初步了解即可。

博客日志:

  • 开始于 2025.08.28
  • 完成于 2025.09.13

文章转载自:

http://vYIYHIts.kgnrh.cn
http://t8GYIPt7.kgnrh.cn
http://IaIDXSKq.kgnrh.cn
http://BUrLddZ9.kgnrh.cn
http://97w0IT6v.kgnrh.cn
http://AgsgHUzW.kgnrh.cn
http://rTWAC4Dw.kgnrh.cn
http://88vfTKsF.kgnrh.cn
http://Airp4Rxt.kgnrh.cn
http://QA0EsxJm.kgnrh.cn
http://PqOnVluV.kgnrh.cn
http://nYCFxjcD.kgnrh.cn
http://GWwe7frr.kgnrh.cn
http://VaDBvpzO.kgnrh.cn
http://ORmQSZ5W.kgnrh.cn
http://y5oVmlpZ.kgnrh.cn
http://rCw8RR9F.kgnrh.cn
http://wFk2qAbx.kgnrh.cn
http://UtXmSGYj.kgnrh.cn
http://VTTbzAXq.kgnrh.cn
http://S6EEMH0p.kgnrh.cn
http://iO2687JU.kgnrh.cn
http://wpPYS2nN.kgnrh.cn
http://hRN833SU.kgnrh.cn
http://oXRZnD1p.kgnrh.cn
http://FRwYYX83.kgnrh.cn
http://npKXCMFd.kgnrh.cn
http://LrZzvlqR.kgnrh.cn
http://ihrhKL92.kgnrh.cn
http://xIWbsRKB.kgnrh.cn
http://www.dtcms.com/a/382254.html

相关文章:

  • XSS攻击1----(XSS介绍)
  • 【LeetCode 每日一题】3446. 按对角线进行矩阵排序——(解法一)分组 - 排序 - 重建
  • 【亲测有效】解决 “Batch script contains DOS line breaks (\r\n)” 报错
  • 集值优化问题:理论、应用与前沿进展
  • 17、逻辑回归与分类评估 - 从连续到离散的智能判断
  • AMD KFD的BO设计分析系列3-1: GTT的实现分析
  • 如何实现静态库与动态库的制作
  • 【硬件开发】电源抑制比PSRR
  • 基于Redisson的分布式锁原理深度解析与性能优化实践指南
  • 【Leetcode hot 100】101.对称二叉树
  • 破解多校区高校运维困局,协同效率提升60%的智能运维方案
  • 王道计算机组成原理 学习笔记
  • Matplotlib:绘制你的第一张折线图与散点图
  • 即梦批量生成图片软件使用运营大管家-即梦图片批量生成器
  • Qt中解析JSON文件
  • 从静态表查询冲突到其原理
  • Git 版本回退与撤销修改
  • Tcpdump: The Basics Tcpdump 基础
  • 智慧物联网水利大数据平台建设方案PPT(70页)
  • 字典树初步
  • GitHub 热榜项目 - 日榜(2025-09-13)
  • 18、决策树与集成学习 - 从单一智慧到群体决策
  • 基于 Spring 的策略模式框架,用于根据不同的类的标识获取对应的处理器实例
  • Python:OpenCV 教程——从传统视觉到深度学习:YOLOv8 与 OpenCV DNN 模块协同实现工业缺陷检测
  • UTC时间戳转换
  • 【Unity进阶】Unity发布PC端,隐藏并自定义默认标题栏
  • 【Qt】编写Qt自定义Ui控件步骤
  • HTTP 状态码背后的逻辑:从请求到响应的完整流程解析(含完整流程图)
  • 如何规划活动宣传软文的发布节奏?
  • 什么是NTP?