科技改變生活 · 科技引領未來
Python是一種跨平臺的計算機程序設計語言。 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。最初被設計用于編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越多被用于獨立的、大型項目的開發(fā)。
它還有一個很驚人的中文名,叫蟒蛇。
逐個字符用ord()判斷ascii碼a - z : 97 - 122A - Z : 65 - 90def is_english_char(ch): if ord(ch) not in (97,122) and ord(ch) not in (65,90): return False return True上面函數(shù)可以辨別字符是否為英文字符
學了多年計算機,還是在搬磚的碼農(nóng),還是有資格來回答這個問題的。
一句話解答:計算機語言底層其實是二進制,由于計算機是由西方國家發(fā)明,并且在英語國家完成工業(yè)化,互聯(lián)網(wǎng),信息化過程,所以大部分計算機語言是英語。其實現(xiàn)在有中文的編程語言,但是使用率不廣,沒有產(chǎn)生大的影響。
計算機語言發(fā)展一分鐘介紹
1、機器語言:最初的計算機所使用的是由“0”和“1”組成的二進制序列,二進制是計算機的語言的基礎。所以最初的計算機只能被少部分人使用,想一想,你需要用一大堆1010101010000110101來指揮那臺巨大的機器,在另一邊的紙帶上給你輸出同樣的一對1010101110101010001010的數(shù)據(jù),真的是頭疼。
世界上第一臺電子計算機:
旁邊的箱子柜子都是這臺計算機的組成部分,就是沒有顯示器。
2、匯編語言:匯編語言是在機器語言的基礎上誕生的一門語言,用一些簡潔的英文字母、符號串來替代一個特定的指令的二進制串,這也提高了語言的記憶性和識別性。
大概就是如上圖所示。
反正我也是看不懂的。這里面包含了很多二進制,八進制,十六進制的數(shù)字,寄存器、控制器,加法器的簡寫。
匯編語言的特點是和機器強相關,也就是說,什么樣的機器,就會規(guī)定特定的匯編語言。比如現(xiàn)在比較廣泛的X86,基于X86處理器的匯編語言,就和X86架構密切相關。
在這個層次,使用中文會出現(xiàn)兩個問題,第一就是中文是象形文字,占用存儲資源較多,一個中文占用兩個字節(jié),相對于字母來講已經(jīng)是兩倍了。二是,由電子計算機的誕生地決定了,芯片廠商基本都是西方國家,比如:Intel,AMD,TI(德州儀器)。
3、高級計算機語言:隨著計算機使用的擴大,需要一種不依賴于特定型號的計算機的語言,用這種語言編寫的程序能在在各種平臺都正常運行。這就開始了計算機高級語言的發(fā)展。
計算機語言一分鐘簡史
一、元老級語言
1、Fortran(公式翻譯語言),目前公認為世界上第一個正式的計算機通用的語言。
1954年約翰·貝克斯在紐約正式對外發(fā)布,稱為FORTRANⅠ,運行在 IBM 704 計算機上。
2、ALGOL,是算法語言(ALGOrithmic Language)的簡稱,目前還在科學計算領域活躍。1958年5月27日至6月1日,GAMM(德國的應用數(shù)學和力學學會)和ACM(國際計算機學會)各有4人出席在蘇黎世舉行第一次設計會議,確定了 ALGOL 語言。
3、COBOL,廣泛使用于企業(yè)的商務場景,于1961年由美國數(shù)據(jù)系統(tǒng)語言協(xié)會公布。
二、主宰級語言
先給大家上一個圖:2018年9月的世界編程語言排行榜
這里的新聞點是,萬年前三:Java、C、C++終于被Python打敗,Python已經(jīng)沖進了第三名。
TIOBE排行榜是根據(jù)互聯(lián)網(wǎng)上有經(jīng)驗的程序員、課程和第三方廠商的數(shù)量,并使用搜索引擎(如Google、Bing、Yahoo!)以及Wikipedia、Amazon、YouTube統(tǒng)計出排名數(shù)據(jù),只是反映某個編程語言的熱門程度,并不能說明一門編程語言好不好,或者一門語言所編寫的代碼數(shù)量多少。能判斷一下現(xiàn)在編程語言的流行趨向。比如:Java一直占據(jù)第一的位置,是因為它是最廣泛的面向對象的編程語言。下面為大家簡單的介紹一下主要語言的誕生時間和語言大佬。
1、Java,1996年1月,Sun公司發(fā)布了Java的第一個開發(fā)工具包(JDK 1.0),這是Java發(fā)展歷程中的重要里程碑,標志著Java成為一種獨立的開發(fā)工具。Java是由Sun公司在1991年成立了一個稱為Green的項目小組,小組成員包括:帕特里克、詹姆斯·高斯林、麥克·舍林丹等,在加利福尼亞州門洛帕克市沙丘路的一個小工作室里面研究開發(fā)新技術,專攻計算機在家電產(chǎn)品上的嵌入式應用研究的副產(chǎn)品,最開始叫Oak。
其實名字不重要。SUN的其實是 Stanford University Network 的縮寫,斯坦福校園網(wǎng)。Google創(chuàng)始人拉里·佩奇和謝爾蓋·布林,都曾攻讀過斯坦福大學計算機科學博士學位。2、C,1972年,美國貝爾實驗室的 D.M.Ritchie 在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。
20世紀60年代,美國AT&T公司貝爾實驗室(AT&T Bell Laboratory)的研究員Ken Thompson閑來無事,手癢難耐,想玩一個他自己編的,模擬在太陽系航行的電子游戲——Space Travel。他背著老板,找到了臺空閑的機器——PDP-7。但這臺機器沒有操作系統(tǒng),而游戲必須使用操作系統(tǒng)的一些功能,于是他著手為PDP-7開發(fā)操作系統(tǒng)。后來,這個操作系統(tǒng)被命名為——UNIX?,F(xiàn)在你們知道程序員無聊了都會干嘛了吧。3、Python、Python的創(chuàng)始人為Guido van Rossum。1989年圣誕節(jié)期間,在阿姆斯特丹,Guido為了打發(fā)圣誕節(jié)的無趣,決心開發(fā)一個新的腳本解釋程序,作為ABC 語言的一種繼承。之所以選中Python(大蟒蛇的意思)作為該編程語言的名字,是因為他是一個叫Monty Python的喜劇團體的愛好者。
又是一個無聊的假期的結果。綜上所述,為什么編程語言都是英語
自計算機科學發(fā)展以來,主要的成果均由英語國家或英語使用率非常大的國家(從編程語言來看,美國、英國、德國、荷蘭等)的計算機科學家、專家完成。所以,自然會偏向于使用更便于自己溝通的語言了確定編程語言規(guī)范。
中文編程語言:易語言
易語言是一門以中文作為程序代碼編程語言,其以“易”著稱,創(chuàng)始人為吳濤。易語言早期版本的名字為E語言。其最早的版本的發(fā)布可追溯至2000年9月11日。創(chuàng)造易語言的初衷是進行用中文來編寫程序的實踐,方便中國人以中國人的思維編寫程序,并不用再去學習西方思維。
創(chuàng)建者:大連大有吳濤易語言軟件開發(fā)有限公司(2004年前吳濤獨立開發(fā),2004年成立公司)
個人意見:中文編程語言有是有,只是這個使用范圍不廣,其實也不太符合程序員世界的簡單、通用、資源控制、可納入到現(xiàn)有語言和編譯系統(tǒng)的交流原則了。
我感覺用nltk 處理中文是完全可用的。其重點在于中文分詞和文本表達的形式。
中文和英文主要的不同之處是中文需要分詞。因為nltk 的處理粒度一般是詞,所以必須要先對文本進行分詞然后再用nltk 來處理(不需要用nltk 來做分詞,直接用分詞包就可以了。嚴重推薦結巴分詞,非常好用)。
中文分詞之后,文本就是一個由每個詞組成的長數(shù)組:[word1, word2, word3…… wordn]。之后就可以使用nltk 里面的各種方法來處理這個文本了。比如用FreqDist 統(tǒng)計文本詞頻,用bigrams 把文本變成雙詞組的形式:[(word1, word2), (word2, word3), (word3, word4)……(wordn-1, wordn)]。
python變成中文版的實現(xiàn)方法如下:
首先下載pycharm漢化包;
然后將“resources_en.jar”文件更名為“resources_cn.jar”;
最后將“resources_cn.jar”文件復制回lib文件夾內(nèi)即可。
PS:建議不要使用漢化版,會導致一些小問題,例如設置界面顯示不完整等。
robots
版權所有 未經(jīng)許可不得轉載
增值電信業(yè)務經(jīng)營許可證備案號:遼ICP備14006349號
網(wǎng)站介紹 商務合作 免責聲明 - html - txt - xml