变量名
回忆上次内容
- 上次讲了 什么是
变量
- 变量变量
- 能变的量 就是变量
- 各种系统、游戏就是由变量所组成的
- 声明了变量
- 并且 定义了变量
- 声明就是 declaration
- 把标识符 和 具体值 联系起来
- 标识符就是 变量的标记符
- 具体值 就是 赋给变量的值
- 过程就是 赋值
- 就是 assignment
- 可以给变量 具体的值
- 就是 assignment
- 哪些字符串可以用作变量名呢?🤔
变量名
- a、a1可以作为变量名
- 字母开头后面 可以接数字
- 1a 不可以 作为变量名
- 变量名 不能是 数字开头
- 为什么 不能是 数字开头 呢?
数字
- 数字开头 一般都表示 数字常量
- 从 c 语言的时候就是这样
- 这样 词法分析器 便于区分
- 标识符
- 数字常量
- 变量名 有没有个
命名要求
呢?
命名要求
-
变量名、函数名、模块名
- 都属于标识符
- identifier
- python对于标识符的规则
- 模仿c语言
- 都属于标识符
-
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具体什么要求呢?
查看文档
- 进入帮助模式
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v7hW2yO0-1681783529272)(https://doc.shiyanlou.com/courses/uid1190679-20230215-1676466057390)]
- 找到主题
- IDENTIFIERS
标识符
- 基本规则和c语言类似
- 第一个字符应该是字母或下划线
- 后面跟 字母、数字、下划线
- 中文字符可以作为标识符么?
中文标识符
- 具体实验
- python3 中
- 中文字符串可以作为变量的标识符
- 这怎么理解呢?
PEP3131
-
不只是中文
- 大多数 unicode 字符都可以作为标识符
- 不过一般不用
- 大多数 unicode 字符都可以作为标识符
-
https://peps.python.org/pep-3131/
- 回忆一下什么是 unicode
- 如何判断一个字符串
- 是否是合法的标识符呢?
identifier
- 字符串类(str) 有这么一个函数
- 叫做 isidentifier()
- 就是看看这个字符串
- 是否能够做 identifier 标识符
- 如果非要数字开头的话
- 前面要加下划线
- 标点也属于unicode字符
- 可以放在标识符中吗?
标点
- 标点不能进入标识符
- 🙅🏻♀
- 为什么呢?
分别赋值
- 以逗号为例
- 逗号担负这个切分的功能
- 可以对两个变量分别赋值
- 其他符号
-
-
-
- /
- "
- ?
-
- 都有各自的功能
- 都不能作为标识符identifier
练习
-
以下哪些变量名是合法的?
- oeasy
- o2z
- o?z
- o,z
- _orz
- 0rz
- __0rz
-
使用函数验证一下推论
失灵
- isidentifier 也有不灵的时候
- 这如何理解呢?
- 先去总结一下
总结
- 变量 就是 能变的量
- 这次研究了 变量标识符的 规则
- 第一个字符 应该是 字母或下划线
- 合法的标识符可以包括
- 大小写字母
- 数字
- 下划线
- 还研究了字符串(str)的函数
- isidentifier
- 查询字符串
- 是否为合法标识符
- 最后发现
- 这个isidentifier函数有时候不好使?
-
这怎么理解呢??🤔
-
我们下次再说!👋
-
蓝桥->https://www.lanqiao.cn/courses/3584
-
github->https://github.com/overmind1980/oeasy-python-tutorial
-
gitee->https://gitee.com/overmind1980/oeasypython