Error in user YAML: (<unknown>): found a tab character that violate indentation while scanning a plain scalar at line 3 column 3
---
- oeasy Python 0051
- 这是 oeasy 系统化 Python 教程,从基础一步步讲,扎实、完整、不跳步。愿意花时间学,就能真正学会。
- 本教程同步发布在:
- 个人网站: `https://oeasy.org`
- 蓝桥云课: `https://www.lanqiao.cn/courses/3584`
- GitHub: `https://github.com/overmind1980/oeasy-python-tutorial`
- Gitee: `https://gitee.com/overmind1980/oeasypython`
----
上次 我们 研究了
- 变量的
死 - 有
生就有死
- 变量的
-
原本的
死- 是 在程序退出时
- 自动执行的
- 也 可以 在运行过程中
- 手动给变量
赐死 - 突然死亡
- 就是 del
- 手动给变量
- 是 在程序退出时
-
del 了之后
- 在 当前作用域(scope)内
- 就 找不到 这个变量 了
- 也就是 说a 消失了😱
- 当然 我们还可以
- 让a
重生 - 感觉 自己成
- 变量造物主 了
- 让a
- 变量名 该怎么起呢?🤔
- 赋值 是
- 将 值 赋给 变量名
- assign value to variable
-
变量名
- 比如 number 、 word
- 都是
字符串
-
这个字符串
- 也叫
标识符 identifier
- 也叫
- 变量名
- 就像 变量的 身份证🆔
- identity card
- 之前 说的id函数
- 就是身份证
- 有什么区别吗?
a = 0
print("id:", id(a))
- id 查看的是
- 变量
唯一的内存地址
- 变量
- 保证同时存在的对象
- 有唯一的地址
- 标识符(identifier)
- 唯一在
哪儿呢?
- 唯一在
- 标识符(identifier)的 唯一
- 指的是 变量名字是唯一的
a = 0
a = 1
-
重新赋值
- 不会 声明新变量
- 只是 再次赋值
-
什么样的 标识符
- 是
合法的呢?
- 是
a1 = 456
- a1 可以 作为变量名
1a = 789
- 1a
不能 作变量名
- 为什么呢?
-
a1是
- 字母开头
- 后面 接数字
-
1a 属于是
- 数字开头的
- 不行
-
深入游乐场
- 看看python怎么说
- 进入帮助模式
- 找到主题
- IDENTIFIERS
- 标识符
- python中
- 标识符的 基本规则
- 第一个字符 只能是 字母和下划线
- 后面跟 字母和下划线 外加 数字
- 数字开头
为什么- 不能当 变量名?
- 说这是惯例
- 从哪儿来的惯例呢?
- c语言 对于 标识符的
- 命名要求是 这样的
- 第一个字符 应该是 字母和下划线
- The first letter of an identifier should be either a letter or an underscore
- 合法的标识符 可以包括 字母和下划线,外加 数字
- A valid identifier can have letters(both uppercase and lowercase letters),digits and underscores.
- python 和 c 一模一样
- 为什么c 要有 这么个惯例 呢?
- 数字开头 一般都被认作
- 数字常量
- 这惯例 是为了 区分
- 标识符
- 数字常量
- 如何判断字符串
- 是
合法的标识符呢?
- 是
- 按q退出帮助细则
- 按回车 退出帮助模式
- 回到 游乐场 >>>
help(str.isidentifier)
- 字符串类(str)
- 有isidentifier()函数
- 判断字符串 是否为
合法标识符
- 比如
- "abc"
- 是不是合法标识符呢?
- isidentifier()?
"abc".isidentifier()
- True
- abc是合法的标识符
- 这是
字母开头的- 符合要求
- 要是
数字开头的呢?
"98k".isidentifier()
- 而字符串 "98k"
- 就不符合要求了
- 如果
就想用"98k"- 当 标识符 呢?
- 硬上是不行的!😭
- 有什么解决的方法吗?
- 如果
非要 数字开头的话- 前面 不是可以 加下划线(underscore) 嘛!
- 看起来 就像 98k
- _98k报了NameError!!!😄
- 有戏!!!
- 符合 要求 吗?
"_98k".isidentifier()
- 符合规则!!😄
- 真能赋值吗?!🤔
_98k = "ak47"
- 真能赋值!!😄
- 不用硬上
- 也能赋值
-
以下哪些变量名是合法的?
- oeasy
- o2z
- o?z
- o,z
- _orz
- 0rz
- __0rz
-
使用isidentifier函数
验证一下 你的判断
- 猜对了吗?!🤔
- 标识符 只能 由 字母、下划线、数字 组成
- 开头不能是 数字
- 这次我们了解了
标识符要求首字符 为 字母和下划线后面字符 为 字母和下划线 外加 数字
- 使用isidentifier函数 可以验证
- 标识符 是否合法
- 规则 可以追溯到 c语言
- c语言 为什么
- 会影响到 python 呢?🤔
- 我们下次再说!👋
- 配套视频
- 本文来自 oeasy Python 系统教程。
- 想完整、扎实学 Python,
- 搜索 oeasy 即可。
























