python为什么不能以数字开头-Python教程

资源魔 34 0
任何事件只需有人规则成文了,必然有其缘由所正在,也就是有其正当性所正在

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编程 python使用问题

抱歉,评论功能暂时关闭!