Python 变量名没有固定的清单,变量名是程序员自己定义的标识符,只要符合 Python 官方命名规则就可以作为变量名,同时 Python 自带一批关键字,这些关键字不能拿来当变量名,这点是新手最容易混淆的地方。变量名本质是给内存里面的数据起一个名字,后续代码通过这个名字读取修改数据,Python 属于动态类型语言,定义变量的时候不需要提前写数据类型,直接赋值就完成创建,但是命名有硬性语法限制,如果违反规则程序会直接报语法错误,除了硬性规则之外,行业还有通用的命名风格规范,用来提升代码可读性,团队项目一般都会统一遵守这套规范。学习的时候要区分三类内容,合法变量名示例,不能使用的关键字,还有不推荐但是语法允许的写法,下面深度讲解命名规则 关键字列表 命名风格还有常见报错原因。
变量名硬性命名规则
1 变量名可以由英文字母 数字 下划线组成
2 变量名第一个字符不能是数字,不能以数字开头
3 变量名区分大小写,Name 和 name 属于两个不同变量
4 变量名里面不能包含空格 特殊符号 中文虽然新版 Python 支持中文变量名,但是不推荐项目使用
5 不能使用 Python 内置关键字作为变量名,比如 if for while class 这类
Python 关键字清单 禁止作为变量名
False None True and as assert async await break class continue def del elif else except finally for from global if import in is lambda nonlocal not or pass raise return try while with yield
常用合法变量名示例
1 普通小写单词 name age score
2 下划线风格 user_name total_price
3 带下划线前缀 _temp
4 驼峰写法 userName studentInfo
5 大写常量 TAX_RATE MAX_COUNT
6 单个字母 i x n 循环里面非常常见
命名风格规范
| 命名风格 | 写法特点 | 推荐场景 |
|---|---|---|
| 蛇形命名 | 全部小写 单词下划线分隔 | 普通变量 函数,Python 主流风格 |
| 驼峰命名 | 首单词小写后面单词首字母大写 | 类里面部分变量,第三方库兼容写法 |
| 全大写加下划线 | 全部大写单词下划线分隔 | 常量,固定不变数值 |
| 单下划线开头 | _name | 内部私有变量提示 |
| 双下划线开头 | __name | 类内部名称改写 |
错误变量名示例与原因
1 123name 错误,数字开头
2 user name 错误,名称里面有空格
3 user name 错误,包含特殊符号
4 if 错误,属于关键字
5 True 错误,属于内置关键字
实操创建变量步骤
1 确定要存储的数据,比如学生分数
2 按照规则设计变量名,推荐蛇形命名 student_score
3 写赋值语句 student_score 等于 95
4 后续代码直接调用这个变量名读取数值
5 如果需要更换数据,重新给变量名赋值即可,变量类型会跟着新数据自动改变
补充要点
1 内置函数名比如 print len input,语法上可以拿来当变量名,但是强烈不推荐,一旦覆盖之后原来内置函数就失效
2 中文变量名虽然 Python3 支持,跨平台协作容易出现编码问题,正式项目尽量使用英文命名
3 变量名要有语义,不要写 a b c 这种无意义名字,方便后续读代码
【常见问题】
问题 1 python 变量名有哪些 为什么不能用 if 作为变量名
回答 1 python 变量名有哪些,if 属于 Python 内置关键字,关键字本身是语法保留字,有固定语法含义,如果拿来做变量名,解释器识别的时候会产生冲突,直接触发语法报错。
问题 2 python 变量名有哪些 变量名区分大小写吗
回答 2 python 变量名有哪些,Python 变量名严格区分大小写,Score 和 score 是两个独立变量,互相不会通用,写代码的时候要保持大小写统一,避免出现找不到变量的报错。
问题 3 python 变量名有哪些 print 能不能当成变量名
回答 3 python 变量名有哪些,print 语法层面可以赋值当做变量名,但是 print 是内置函数,覆盖之后原本打印功能就不能正常使用,属于不推荐写法,不要把内置函数名用作变量名。
【免责申明】
本文内容仅作为 Python 变量名命名语法学习参考,不同 Python 版本关键字列表基本保持稳定,团队开发请遵循 PEP8 编码规范,因违规命名造成代码报错或者项目协作问题,相关风险由开发者自行承担。


