变量定义 回忆上次内容
-
变量 就是 能变的量
-
上次研究了 变量标识符的 规则
-
第一个字符 应该是 字母或下划线
-
合法的标识符可以包括
-
大小写字母
-
数字
-
下划线
-
还研究了字符串(str)的函数
-
isidentifier
-
查询字符串
-
是否为合法标识符
-
最后发现
-
这个isidentifier函数有时候不好使?

添加图片注释,不超过 140 字(可选)
-
这怎么理解呢??🤔
翻看文档
-
and 属于关键字

添加图片注释,不超过 140 字(可选)
-
如何判断一个字符串是否是关键字呢?

添加图片注释,不超过 140 字(可选)
判断是否为关键字

添加图片注释,不超过 140 字(可选)
-
关键字 是不能作为标识符的
-
dir()查询模块的时候
-
经常会看到下划线

添加图片注释,不超过 140 字(可选)
-
这些下划线如何理解?
下划线
-
from module import * 时
-
以下划线开头的变量
-
不被其他模块引用

添加图片注释,不超过 140 字(可选)
-
所以 _a 可以作为模块内部的变量或者函数
内部变量
-
除非明确点名

添加图片注释,不超过 140 字(可选)
-
指清名字 _pi
-
是可以导入的
-
不点名不能用吗?
不点名

添加图片注释,不超过 140 字(可选)
-
from random import *
-
无法导入_e

添加图片注释,不超过 140 字(可选)
上次的值
-
在游乐场里
-
_下划线 意味着上次的值

添加图片注释,不超过 140 字(可选)
后面的下划线
-
在后面加上下划线
-
一般是为了区分已经有的标识符

添加图片注释,不超过 140 字(可选)
-
使用max
-
会把max函数 屏蔽掉
-
使用max_
-
不会屏蔽 max函数
两端双下划线(dunder)

添加图片注释,不超过 140 字(可选)
-
系统定义的标识符
-
模块名
-
函数名
-
变量名

添加图片注释,不超过 140 字(可选)
-
dunder变量都是有用意的
-
不要轻易破坏
前有双下划线
-
类里面的私有名
-
无法直接存取
-
目的是
-
避免 和 父类或子类的私有变量 重名

添加图片注释,不超过 140 字(可选)
-
我们再来看看 o 这个变量标识符
细节
-
o 两边并不加引号
-
因为 这里的 o 是 变量标识符
-
而不是 字符串
-
如果加了双引号 就是字符串了

添加图片注释,不超过 140 字(可选)
-
在等号两端 都保留 有一个空格
-
可是 为什么要 加空格呢?
可读性
-
增加文档的可读性
-
这不会 影响程序的执行速度

添加图片注释,不超过 140 字(可选)
-
这两句话从何说起
加空格的原因
-
这两句话来自于python之禅

添加图片注释,不超过 140 字(可选)
-
现在到底有多少变量呢?
locals()
-
查询本地变量
-
有一个内置的函数叫做 locals

添加图片注释,不超过 140 字(可选)
-
可以查询关于 locals 的帮助

添加图片注释,不超过 140 字(可选)
-
返回的是一个包含当前域中所有变量的字典
-
声明和赋值都使用等号
-
声明并赋值 变量o 之后
-
变量o 真的在内存里有位置了么?
-
我们来看看
具体位置

添加图片注释,不超过 140 字(可选)
-
id函数是什么意思?
-
help(id)

添加图片注释,不超过 140 字(可选)
-
id返回 对象o的标识符
-
o 确实在内存中 有了位置
-
但是如果 我们给变量新赋 一个值
-
那么 存储变量的位置
-
还是那个 内存地址 么?
实践
-
虽然 a这个变量名 没有变
-
但是 id(a)变了

添加图片注释,不超过 140 字(可选)
-
也就是说
-
a这个容器的 内存位置没变
-
但是a所指向的 变量位置
-
在内存中的位置 变了
-
两次赋值 都是STORE到a这个NAME里面
-
第二次赋值 和 第一次赋值
-
有什么区别吗?
区别
-
变量的声明和赋值究竟有什么不同
-
第一次赋值时
-
声明和赋值是同时完成的

添加图片注释,不超过 140 字(可选)
-
如果是 第二次赋值 呢?
纯赋值
-
声明了之后
-
再有 等号赋值 就是 第二次赋值

添加图片注释,不超过 140 字(可选)
-
是 纯赋值
-
没有声明新的变量
总结
-
这次 了解了isidentifier的细节
-
关于 关键字
-
关于 下划线
-
如何查询 变量所指向的地址?
-
id
-
如何查询 已有的各种变量?
-
locals
-
如果 用一个变量a的值
-
给另一个变量b 赋值
-
是什么样的过程 呢??🤔
-
我们下次再说!👋
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)