python不能以數(shù)字開頭的原因是什么-創(chuàng)新互聯(lián)

這篇文章主要介紹python不能以數(shù)字開頭的原因是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

我們擁有十年網(wǎng)頁設計和網(wǎng)站建設經(jīng)驗,從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設計師為您提供的解決方案。為企業(yè)提供做網(wǎng)站、成都網(wǎng)站設計、微信開發(fā)、小程序定制開發(fā)成都做手機網(wǎng)站、H5網(wǎng)站設計、等業(yè)務。無論您有什么樣的網(wǎng)站設計或者設計方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設計服務并滿足您的需求。

Python變量命名規(guī)則

變量名只能包含字母、數(shù)字和下劃線。變量名可以字母或下劃線開頭,但不能以數(shù)字開頭,例如,可將變量命名為message_1,但不能將其命名為1_message。

變量名不能包含空格,但可使用下劃線來分隔其中的單詞。例如,變量名greeting_message可行,但變量名greeting message會引發(fā)錯誤。

不要將Python關鍵字和函數(shù)名用作變量名,即不要使用Python保留用于特殊用途的單詞,如print。

變量名應既簡短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好。

慎用小寫字母l和大寫字母O,因給他們可能被人錯看成數(shù)字1和0;

注意:應使用小寫的Python變量名。在變量名中使用大寫字母雖然不會導致錯誤,但避免使用大寫字母是個不錯的注意。

那么變量為什么不能以數(shù)字開頭呢?這應該要從編譯原理的角度來解釋了吧。

這是我今天在做腳本解析時突然想到的。先來說明一下我們的這個語法解析工具,要解析的腳本很簡單,只包括了&,|,~,=,!=,()和{}等操作符。開始時采用了編譯原理的那一套,畫NFA、DFA,找出狀態(tài)然后再寫詞法分析生成Token,接著語法分析將生成的Token根據(jù)語義生成語法樹,最后求值。后來想一想,這個腳本很簡單只需要一個一個字符判斷遇到不同類型的字符就進入到不同的子函數(shù)中進行處理,同時完成詞法解析和語法分析以及求值的過程。不過無論使用那種方法都需要根據(jù)讀入的字符來判斷當前進入到哪個Token里了,這就是問題的關鍵所在。

為什么說判斷字符屬于哪個Token是關鍵呢?

假設我們取消掉了變量名定義中不能以數(shù)字開頭的限制,這時當詞法分析器進入到一個Token分析的起始狀態(tài)時,如果讀取的第一個字符為數(shù)字,那么詞法分析器是無法判斷它當前要分析的這個Token是變量名還是數(shù)字常量了。好,如果你說分析器可以根據(jù)后面的字符來判斷的話,那么如果下一個字符為字母,那么很容易就判斷出當前Token屬于變量名(我們暫且忽略保留關鍵字),但是當如果接下來的字符全都是數(shù)字那怎么辦?分析器將無法判斷,因為變量名的定義中允許數(shù)字的存在。

呵呵,上面也許說的比較繞口難于理解,用句簡單的話來講就是:當分析"123"這個字符串的時候,如果變量名允許第一個字符為數(shù)字,分析器就不知道“123”該是數(shù)值常量還是變量名了。

以上是python不能以數(shù)字開頭的原因是什么的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

分享標題:python不能以數(shù)字開頭的原因是什么-創(chuàng)新互聯(lián)
轉載來于:http://muchs.cn/article46/dpdchg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設計公司、外貿建站、網(wǎng)站策劃、定制網(wǎng)站、小程序開發(fā)App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

外貿網(wǎng)站建設