python变量为什么不能以数字开头

编程之家收集整理的这篇文章主要介绍了python变量为什么不能以数字开头编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

python变量为什么不能以数字开头
任何事情只要有人规定成文了,必定有其原因所在,也就是有其合理性所在。

Python变量命名规则(推荐学习:Python视频教程

变量名只能包含字母、数字和下划线。变量名可以字母或下划线开头,但不能以数字开头,例如,可将变量命名为message_1,但不能将其命名为1_message。

变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message可行,但变量名greeting message会引发错误

不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词,如print。

变量名应既简短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好。

慎用小写字母l和大写字母O,因给他们可能被人错看成数字1和0;

注意:应使用小写的Python变量名。在变量名中使用大写字母虽然不会导致错误,但避免使用大写字母是个不错的注意。

那么它为什么不能以数字开头呢?这应该要从编译原理的角度来解释了吧。

这是我今天在做脚本解析时突然想到的。先来说明一下我们这个语法解析工具,要解析脚本很简单,只包括了&,|,~,=,!=,()和{}等操作符。开始时采用了编译原理的那一套,画NFA、DFA,找出状态然后再写词法分析生成Token,接着语法分析将生成的Token根据语义生成语法树,最后求值。后来想一想,这个脚本很简单只需要一个一个字符判断遇到不同类型的字符就进入到不同的子函数进行处理,同时完成词法解析和语法分析以及求值的过程。不过无论使用那种方法都需要根据读入的字符来判断当前进入到哪个Token里了,这就是问题的关键所在。

为什么说判断字符属于哪个Token是关键呢?

假设我们取消掉了变量名定义中不能以数字开头的限制,这时当词法分析器进入到一个Token分析的起始状态时,如果读取的第一个字符为数字,那么词法分析器是无法判断它当前要分析的这个Token是变量名还是数字常量了。好,如果你说分析器可以根据后面的字符来判断的话,那么如果下一个字符为字母,那么很容易就判断出当前Token属于变量名(我们暂且忽略保留关键字),但是当如果接下来的字符全都是数字那怎么办?分析器将无法判断,因为变量名的定义中允许数字的存在。

呵呵,上面也许说的比较绕口难于理解,用句简单的话来讲就是:当分析"123"这个字符串的时候,如果变量名允许第一个字符为数字,分析器就不知道“123”该是数值常量还是变量名了。

更多Python相关技术文章,请访问Python教程栏目进行学习!

总结

以上是编程之家为你收集整理的python变量为什么不能以数字开头全部内容,希望文章能够帮你解决python变量为什么不能以数字开头所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

Python相关文章

在公司内部或前台,有时需要展示数字化看板,展示公司的业务信息。看着别的公司展示的炫酷的数字化大屏,是否很羡慕?本文以Pythonʿlask+jQuery⯬harts,简述如何开发数字化大屏进行数
​在日常工作生活中,经常用到压缩文件,有些为了安全保密,还专门设置了密码,如果忘记密码要怎么破,这时暴力破解就派上了用场,本文以一个简单的小例子,简述如何通过Python中的zipfile模块进行破解
假如公司需要统计每个员工的个人信息,制定好模板后,由员工填写,然后发送到综合部进行汇总,在这种情况下,如果公司有上百位员工的信息需要统计,且采用纯手工进行复制粘贴的方式进行汇总,则将是一项耗时费力易错
在日常工作中,类似合同一样的文档通常都会有固定的模板,如偶尔编辑一两份文档,则可以手动完成。假如同一个模板有一百份或更多文档需要生成呢?如果手工逐个文档的编辑保存,不仅容易出错,还是一项费力不讨好的工
在日常工作生活中,都是利用个人或公司的邮箱客户端进行收发邮件,那么如何打造一款属于自己的邮箱客户端呢?本文以一个简单的小例子,简述如何通过Pyhton的imaplib和email两大模块,实现邮件的接
在日常工作中,经常需要用到操作系统,以及文件目录相关的内容,属于系统运维相关的必备知识点,本文主要简述Python中与os模块及os.path模块相关内容,仅供学习分享使用,如有不足之处,还请指正。
所谓爬虫,就是帮助我们从互联网上获取相关数据并提取有用的信息。在大数据时代,爬虫是数据采集非常重要的一种手段,比人工进行查询,采集数据更加方便,更加快捷。刚开始学爬虫时,一般从静态,结构比较规范的网页
扎扎实实地打好基础,练好基本功,我认为这是学好Python的“秘诀”。老子曾云:九层之台,起于垒土。本文主要以一些简单的小例子简述Python基础之语句语法相关内容,仅供学习分享使用,如有不足之处,还
微信公众号搜索 “ 程序精选 ” ,选择关注!
微信公众号搜 "程序精选"关注