| 怎么在鄭州學(xué)習(xí)Python課程 關(guān)于Python那點(diǎn)事 |
| 聯(lián)系人:李云 (先生) | 手機(jī):15303814119 |
|
電話: |
傳真: |
| 郵箱:2051264377@qq.com | 地址:鄭州市金水區(qū)緯五路21號(hào)河南教育學(xué)院綜合樓(經(jīng)緯中學(xué)樓)7/8層 |
|
不少人都已經(jīng)認(rèn)同Python是最適合入門(mén)的編程語(yǔ)言,但更多人是知其然而不知其所以然,為什么Python對(duì)于青少年和成年人是入門(mén)語(yǔ)言的最佳選擇?偉大的入門(mén)編程語(yǔ)言有什么特征呢? 下面的內(nèi)容就是關(guān)于Python的大家族,說(shuō)再多都不如有用的來(lái)的實(shí)在,直接看文章吧。
Python 大家族 首先得提一下 Python 語(yǔ)言和 Python 實(shí)現(xiàn)之間的關(guān)系。計(jì)算機(jī)語(yǔ)言本身可以說(shuō)是一個(gè)規(guī)范,一個(gè)很好的例子就是 Scheme。R5RS 就是 Scheme 語(yǔ)言的一個(gè)規(guī)范文檔,這里基本上規(guī)定了語(yǔ)言的規(guī)則,語(yǔ)法等方方面面。但是光有文檔肯定還是不行的,所以就會(huì)有人根據(jù)語(yǔ)言的規(guī)范來(lái)實(shí)現(xiàn)一個(gè)能用的語(yǔ)言編譯器或者解釋器。對(duì)于 Python 來(lái)說(shuō),其語(yǔ)言的規(guī)范在文檔里的 The Python Language Reference。而我們常用的 Python 常常被稱(chēng)為 CPython,這是官方提供的,也是使用最廣泛的一個(gè)實(shí)現(xiàn)。事實(shí)上 Python 作為一個(gè)流行的語(yǔ)言還有著很多不同的實(shí)現(xiàn)。下面會(huì)介紹一些其他的 Python 實(shí)現(xiàn),和一些 Python 衍生的語(yǔ)言。 PyPy 如果你經(jīng)常關(guān)注 Python 相關(guān)的新聞那你一定看到過(guò) PyPy。概括的講它的目標(biāo)是實(shí)現(xiàn)一個(gè)與 Python 完全兼容但速度要快很多的 Python 實(shí)現(xiàn)。在官方提供的評(píng)測(cè)頁(yè)面中,你可以看到現(xiàn)在 PyPy 比 CPython 要快5倍左右。然而它自身也有一個(gè)很麻煩的問(wèn)題就是 PyPy 不兼容 C 擴(kuò)展,這也是它一直以來(lái)難以得到普及的一個(gè)原因。 對(duì)于我等一般用戶來(lái)說(shuō),PyPy 已經(jīng)算是相當(dāng)成熟了。現(xiàn)在的 PyPy 2.0 是一個(gè)與 Python 2.7 兼容的版本,其中絕大部分標(biāo)準(zhǔn)庫(kù)的內(nèi)容都是可以使用的,而且大部分純 Python 庫(kù)也沒(méi)有問(wèn)題。官方現(xiàn)在提供包括 Windows 的各種版本的包裹下載。你可以自己嘗試下使用 PyPy 有沒(méi)有使你的程序跑的更快。如果可以的話那你就完全不費(fèi)力氣的獲得了性能的提升,這也是 PyPy 項(xiàng)目吸引人的地方之一。 另一方面 PyPy 本身也提供了一套開(kāi)發(fā)語(yǔ)言解釋器的框架。官方博客有一篇文章介紹了如何編寫(xiě)一個(gè)簡(jiǎn)單 Brainfuck 解釋器。 IronPython IronPython 是微軟 .Net 平臺(tái)上的一個(gè) Python 實(shí)現(xiàn)。事實(shí)上這基本上算是來(lái)自微軟的一個(gè)開(kāi)源項(xiàng)目,其所使用的 DLR 也是 .Net 4.0 中一個(gè)新的重要功能。 由于工作的原因我之前試著用了下 IronPython,感覺(jué)真是...驚呆了。如果試過(guò)在 C/C++ 項(xiàng)目中嵌入 Lua 或者其他腳本語(yǔ)言的經(jīng)驗(yàn),你會(huì)覺(jué)的要能讓他正常的跑起來(lái)其實(shí)還是挺難的。起碼你自己要處理將 C 的函數(shù)或者 C++ 的 Class 暴露到腳本語(yǔ)言中,處理腳本中的異常等等。總之就是挺麻煩。 但如果是用 IronPython 那基本上那你要操心的事情就非常少了。像 Class 都可以直接暴露給 IronPython,C# 可以直接接到 IronPython 中的異常,也可以很容易的取得 IronPython 中的值或者 Class。而且 IronPython 可以很簡(jiǎn)單的使用 .Net 中的類(lèi),事實(shí)上你都可以用 IronPython 來(lái)寫(xiě) WinForms 程序。總而言之,就是太方便了。
在效率方面的話其實(shí) IronPython 跟 CPython 沒(méi)有太大區(qū)別。但是如果你是 .Net 開(kāi)發(fā)者的話一定得看看 IronPython。說(shuō)不定就有機(jī)會(huì)用到。 相對(duì)于 .Net 平臺(tái),在 Java 上也有對(duì)應(yīng)的 Jython 項(xiàng)目。不過(guò)這個(gè)我完全沒(méi)有用過(guò)所以沒(méi)什么可以說(shuō)的。 Cython "在Python中性能不夠的地方,你可以用C語(yǔ)言來(lái)重寫(xiě)從而提升效率" - 我估計(jì)你應(yīng)該在哪里看到過(guò)類(lèi)似的說(shuō)法。但這個(gè)到底應(yīng)該怎么做呢? 要用 C 語(yǔ)言來(lái)重寫(xiě) Python 模塊說(shuō)實(shí)話是個(gè)挺麻煩的事情。好消息是 Cython 就是針對(duì)這個(gè)問(wèn)題的一個(gè)項(xiàng)目。Cython 提供了一個(gè)類(lèi)似 Python 的強(qiáng)類(lèi)型語(yǔ)言,Cython 可以將其編譯為 C 的代碼,然后你可以很輕松的將其編譯成 Python 的 C 擴(kuò)展 .pyd 文件。pyd 文件在 Windows 下其實(shí)就是 dll,如果使用 Cython 的話你就可以省去很多麻煩的事情。 但是壞消息是所有扯到 C 語(yǔ)言的東西在 Windows 上都顯得非常麻煩。Cython 的配置也相對(duì)比較復(fù)雜。好消息是你還是可以通過(guò)安裝超牛逼的 PythonXY 來(lái)把所有事情都搞定。 跟目標(biāo) Cython 類(lèi)似的,調(diào)用 C/C++ 原生代碼擴(kuò)展的框架還有 cffi, swig 以及標(biāo)準(zhǔn)庫(kù)中的 ctypes。 Python已經(jīng)成為全球前五大流行編程語(yǔ)言之一,未來(lái)人工智能時(shí)代將是Python的天下,學(xué)習(xí)Python是時(shí)代給予的機(jī)會(huì),抓住機(jī)會(huì),成就人生。 |
| 版權(quán)聲明:以上所展示的信息由會(huì)員自行提供,內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性由發(fā)布會(huì)員負(fù)責(zé)。機(jī)電之家對(duì)此不承擔(dān)任何責(zé)任。 友情提醒:為規(guī)避購(gòu)買(mǎi)風(fēng)險(xiǎn),建議您在購(gòu)買(mǎi)相關(guān)產(chǎn)品前務(wù)必確認(rèn)供應(yīng)商資質(zhì)及產(chǎn)品質(zhì)量。 |
機(jī)電之家網(wǎng) - 機(jī)電行業(yè)權(quán)威網(wǎng)絡(luò)宣傳媒體
關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 會(huì)員助手 | 免費(fèi)鏈接Copyright 2026 jdzj.com All Rights Reserved??技術(shù)支持:機(jī)電之家 服務(wù)熱線:0571-87774297
網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178