當前位置:首頁 » 編程語言 » cpython交互

cpython交互

發布時間: 2022-07-31 22:20:08

python 解釋器 怎麼像jre那樣

什麼叫做jre一樣?
現在Python有如下的解析器
當我們編寫Python代碼時,我們得到的是一個包含Python代碼的以.py為擴展名的文本文件。要運行代碼,就需要Python解釋器去執行.py文件。
由於整個Python語言從規范到解釋器都是開源的,所以理論上,只要水平夠高,任何人都可以編寫Python解釋器來執行Python代碼(當然難度很大)。事實上,確實存在多種Python解釋器。
CPython
當我們從Python官方網站下載並安裝好Python 2.7後,我們就直接獲得了一個官方版本的解釋器:CPython。這個解釋器是用c語言開發的,所以叫CPython。在命令行下運行python就是啟動CPython解釋器。
CPython是使用最廣的Python解釋器。教程的所有代碼也都在CPython下執行。
IPython
IPython是基於CPython之上的一個互動式解釋器,也就是說,IPython只是在交互方式上有所增強,但是執行Python代碼的功能和CPython是完全一樣的。好比很多國產瀏覽器雖然外觀不同,但內核其實都是調用了IE。
CPython用>>>作為提示符,而IPython用In [序號]:作為提示符。
PyPy
PyPy是另一個Python解釋器,它的目標是執行速度。PyPy採用JIT技術,對Python代碼進行動態編譯(注意不是解釋),所以可以顯著提高Python代碼的執行速度。
絕大部分Python代碼都可以在PyPy下運行,但是PyPy和CPython有一些是不同的,這就導致相同的Python代碼在兩種解釋器下執行可能會有不同的結果。如果你的代碼要放到PyPy下執行,就需要了解PyPy和CPython的不同點。
Jython
Jython是運行在Java平台上的Python解釋器,可以直接把Python代碼編譯成Java位元組碼執行。
IronPython
IronPython和Jython類似,只不過IronPython是運行在微軟.Net平台上的Python解釋器,可以直接把Python代碼編譯成.Net的位元組碼。
小結
Python的解釋器很多,但使用最廣泛的還是CPython。如果要和Java或.Net平台交互,最好的辦法不是用Jython或IronPython,而是通過網路調用來交互,確保各程序之間的獨立性。
本教程的所有代碼只確保在CPython 2.7版本下運行。請務必在本地安裝CPython(也就是從Python官方網站下載的安裝程序)。
此外,教程還內嵌一個IPython的Web版本,用來在瀏覽器內練習執行一些Python代碼。要注意兩者功能一樣,輸入的代碼一樣,但是提示符有所不同。另外,不是所有代碼都能在Web版本的IPython中執行,出於安全原因,很多操作(比如文件操作)是受限的,所以有些代碼必須在本地環境執行代碼。

⑵ 怎樣才能算是熟悉python會什麼具體。招聘網頁上寫著熟悉python.高手,指導,謝謝。

熟知主流硬體體系(x86, x64)
熟知 CPython 的具體實現,如若可能至少通讀源碼三遍以上

熟知每條 Python bytecode 如何被解釋執行

熟知每條 Python 語句如何 compile 成 bytecode

熟知 Python 主要數據結構所採用的優化手段
熟知 JIT 以及哪些場合下 PyPy 會比 CPython 有較大性能提高、以及有什麼代價

所以我一直只敢稱自己為 「中級 Pythonista」。對於那些僅僅知道怎麼用 Python 就敢自稱「精通」的人:專家不是那麼好當的,沒有金剛鑽別攬瓷器活。不懂那麼多底層細節就不要隨便說自己「精通」,說自己「擅長」不會被人看不起。

@米嘉 引用的 StackOverflow 上列的那幾項條件是作為將 Python 用於主要工作語言所需要的基本條件,敢於因此而稱自己「精通 Python」要讓不少人笑掉大牙。況且那幾項還有幾個嚴重問題:

第3點:如若可能,盡量避免 map/rece/fitler,而用 list/generator/set comprehension,代碼要清晰得多,GvR 如此說。xrange 和 range 的區別在 Python 3 中馬上就要滾蛋了,所以如非必要,不要大量使用 xrange。
第5點:敢於在 CPython 中大量使用遞歸是對 CPython 實現的公然侮辱。Python 的多個穩定實現都沒有 TCO,遞歸會讓性能迅速下降。記住一點:Python 中函數調用非常昂貴,可讀性、可維護性影響不大的情況下,能展開函數調用的時候盡量展開、遞歸能轉化成循環的盡量轉化。遞歸也不是人類自然的思考方式。
第7點:看書是對的,但不要把 Python 當作一門經典函數式語言對待,因為它不是。你當它是,它會很痛苦(「為毛要這樣濫用我!?」),你也會很痛苦(「為毛你不這樣實現 blah blah!?」)。SICP 是本好書,但不要因此而教條。要清楚的知道什麼時候用函數式,什麼時候用面向對象,什麼時候用面向過程,什麼時候用面向任務,什麼時候用面向結果。在一棵樹上弔死是大多數非理性死忠的表現。

⑶ python解釋器怎麼用優化模式

Python 解釋器可不止一種哦,有 CPython、IPython、Jython、PyPy 等。
顧名思義,CPython 就是用 C 語言開發的了,是官方標准實現,擁有良好的生態,所以應用也就最為廣泛了。
而 IPython 是在 CPython 的基礎之上在互動式方面得到增強的解釋器(http://ipython.org/)。
Jython 是專為 Java 平台設計的 Python 解釋器(http://www.jython.org/),它把 Python 代碼編譯成 Java 位元組碼執行。
PyPy 是 Python 語言(2.7.13和3.5.3)的一種快速、兼容的替代實現(http://pypy.org/),以速度快著稱。

基本來說pypy是最快的一種。

⑷ 什麼是網頁編程

CGI CGI(common Gateway Interface,公共網關介面)。嚴格意義上來說並不算一種網頁編程語言。CGI是信息伺服器主機對外信息服務的標准介面,為了向客戶端提供動態信息而制定。通過專門編寫CGI腳本程序(在CGI控制下運行得程序,通常稱為CGI程序),不僅可以生成靜態的內容,而且可以生成完全無法預見的 動態的內容!比如雅虎、搜狐等搜索引擎提供的強大搜索功能便是利用CGI實現的。CGI腳本程序可以用C、C++等語言在多種平台上進行開發。無需太大修改就可以從一個平台移植到另一個平台上運行,具有很好的兼容性。 ASP與ASP.NET ASP是微軟公司推出的意圖取代CGI的新技術。通過它,用戶可以使用幾乎所有的開發工具來創建和運行互動式的動態網頁,如返饋表單的信息收集處理、文件上傳與下載、聊天室、論壇等等,實現了CGI程序的功能介是又比CGI簡單,而且容易學習。由於ASP使用基於開放設計環境的Active X技術,用戶可以自己定義和製作組件加入其中,使自己的動態網頁具有幾乎無限的擴充能力。它還可利用ADO(Active Data Object,微軟的一種新的數據訪問模型)方便地訪問資料庫,能很好地對數據進行處理。借WINDOWS 東風,ASP得到了長足的發展。 PHP PHP,一個嵌套的縮寫名稱,是英文超級文本預處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種HTML內嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在伺服器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似於C語言,現在被很多的網站編程人員廣泛的運用。PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。它可以比 CGI 或者 Perl 更快速的執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;與同樣是嵌入HTML文檔的腳本語言JavaScript相比,PHP在伺服器端執行,成分利用了伺服器的性能;PHP執行引擎還會將用戶經常訪問的PHP程序駐留在內存中,其他用戶在一次訪問這個程序時就不需要誠信編譯程序了,只要直接執行內存中的代碼就可以了,這也是PHP高效率的體現之一。PHP具有非常強大的功能,所有的CGI或者JavaScript的功能PHP都能實現,而且支持幾乎所有流行的資料庫以及操作系統。 PHP的特性包括: 開放的源代碼:所有的PHP源代碼事實上都可以得到。 PHP是免費的。 基於伺服器端:由於PHP是運行在伺服器端的腳本,可以運行在UNIX、LINUX、WINDOWS下。 嵌入HTML:因為PHP可以嵌入HTML語言,所以學習起來並不困難。 簡單的語言:PHP堅持腳本語言為主,與Java以C++不同。 效率高:PHP消耗相當少的系統資源。 圖像處理:用PHP動態創建圖像 網路搜索 地攤會 Script 腳本語言是介於HTML(HyperText Markup Language,超文本標示語言)和Java、C++和Visual Basic之類的編程語言之間的語言。它的語法和規則沒有可編譯的編程語言那樣嚴格和復雜。傳統的HTML是靜態的,為增強網頁的動態功能,一些廠商先後推出了自己的Script腳本語言,其中Netscape推出了JavaScript(for客戶端和 for服務端兩種),微軟則推出了VBScript和ASP兩種,用於伺服器端和客戶端程序的編寫。 JavaScript JavaScript是一種基於對象(Object)和事件驅動(Event Driven)並具有安全性能的腳本語言。它與Java不同:JavaScript主要用於HTML的頁面,腳本嵌入在HTML的源碼中;而Java是一個獨立的、完整的編程語言,既可以在Web中應用,也可以用於與Web網無關的情況。另外,JavaS cript編寫的程序不必在運行前編譯,它們可以直接寫入Web頁面中並由調用它們的瀏覽器來解釋執行。這樣,一些基本交互作用就不用在伺服器端完成,提高了客戶端的響應時間。 VBScript 為了適應Internet上的應用,Microsoft公司把用於應用程序描述的Visual Basic語言壓縮成一個更合理的子集,稱為Visual Basic Scripting Edition,簡稱VBScript。它也是一種HTML嵌入腳本語言,具有易學易用等特點。如果你已了解Visual Basic或Visual Basic for Applications,就會很快熟悉VBScript。Microsoft公司將VBScript語言作為實施其ActiveX腳本化的最佳選擇,用戶可以採用小的相互操作的部件一起來完成工作,使得應用程序的功能列加強大。 Perl Perl是Practical Extraction and Report Language(實用摘錄和報告語言)的縮寫,由Larry Wall於1986年開發成功。當初的目的主要是Unix環境下從多個文本文件中產生報表,後來成為許多程序員工具箱中最受歡迎的工具,其發展速度和Unix內核的成長速度相仿。現在Perl已經發展到5.0版本,並移植到了各種平台。 Python 是一種跨平台的開發語言,它可以運行在已知的各種操作系統之上,包括windows、Mac OS、Unix、BSD、Palm等。python是一種支持擴展的開發語言,主要的擴展變種有CPython、JPython、PerlPython。它們分別使用C、Java、Perl做它的擴展介面基礎環境的。更准確的說,Python也可以是一種 跨語言的語言。 ColdFusion 美國的一對兄弟allire,在為自己的客戶解決資料庫訪問的問題時,感覺到了cgi程序在編寫和維護上的難度是不能容忍的困難。於是,具有計算機天賦的Jeremy Allire便在1995年編寫了一種快速響應且易於編寫的動態腳本語言,叫做coldfusion,一經推出,便震撼整個網路行業。之後,兄弟倆看到了coldfusion的發展前途,便成立了Allire公司(後來被macromedia收購)。之後 的幾年,全球500強中的一半都採用了coldfusion來解決公司不同情況的問題。通過不斷的版本修改和開發者的不斷壯大,Coldfusion後來發展成為業界知名的企業級解決方案的開發首選。現在,為了產品線的統一,為了工業標準的統一,為了完全 兼容Java平台,Macromedia發布了ColdfusionMX。而眾位以前經常看到的Neo這個詞則是macromedia對於使用新一代coldfusion開發行業解決方案的編碼名稱。 Java Java是一個由Sun公司開發而成的新一代編程語言。是近年來很流行的一種網路編程語言,它由C語言發展而來,是完全面向對象的語言。在與網路的融合中,已顯現出它的強大生命力和廣闊的前景。Java的語法簡練,學習和掌握比較容易,使用它可在各式各樣不同種機器、不同種操作平台的網路環境中開發軟體。Java正在逐步成為Internet應用的主要開發語言。它徹底改變了應用軟體的開發模式,帶來了自PC機以來又一次技術革命,為迅速發展的信息世界增添了新的活力。 您在編程實踐中是否常常碰到要為不同的系統平台重復編程(比如為Windows系統設計一套程序,UNIX系統設計一套程序)? Sun Microsystems公司的Java語言以其"一次編程,到處執行"的技術優勢,廣泛應用於Internet計算機環境下的編程應用,避免您針對不同的系統平台重復編程,減少您的企業的開發成本。 JSP JSP(Java Server Pages,Java伺服器頁面)是在Sun Microsystems公司的倡導下,由許多公司共同參與建立的一種新的動態網頁技術標准。它在動態網頁的建設方面具有強大而特殊的功能。Sun公司應用組建「Java社團」的思想開發JSP技術。在開發JSP規范的過程中,Sun公司與許多主要的Web伺服器、Web應用伺服器和開發工具供應商,以及各種各樣富有經驗的開發團體進行合作,找到了一種適合於應用和頁面開發人員的開發方法,它具有極佳的可移植性和易用性。針對JSP的產品,Sun公司授權予工具提供商(如Macromedia)、結盟公司(如Apache,Netscape)、最終用戶、協作商及其他人。最近,Sun公司將最新版本的JSP和Java Servlet(JSP 1.1,Java Servlet 2.2)的源代碼發放給Apache,以求JSP和Apache緊密結合、共同發展。Apache,Sun公司和許多其他的公司及個人公開成立的咨詢機構更能方便任何公司和個人免費取得信息。 XML XML開發者源於SGML的設計和應用者. 他們已經在SGML上投入了大量精力,但他們卻發現SGML 並沒有完全發揮它的作用.他們當然有其充分的理由.我們可以列舉以下幾個重要方面給大家.在這些方面SGML 帶來的影響可以說是一場革命. SGML (通用標記語言標准ISO 8879:1986)是HTML的前身技術.它是文件和文件中信息的構成主體. SGML與HTML不同.它允許用戶擴展tag集合, 允許用戶建立一定的規則. SGML所產生的tag 集合是用來描敘信息段特徵的.而HTML僅僅只是一個tag集合.所以我們可以說HTML是一個SGML的子集. 早在Seattle會議之前,Bosak和一些精心挑選的SGML結構信息專家就已向W3C提出了「網路上的SGML」計劃. W3C支持並贊助了他們的努力. 工作於1996年7月正式開始起動. 工作的早期,有較大的阻力.因為也存在反對SGML的人.一些制定XML標準的W3C代表甚至聲稱「網路上的SGML」是不可能實現.工作組(原稱「SGML編輯審議委員會」)並未退縮.他們打算讓SGML以全新的面目出現在網上,給SGML以全新的面貌,故給它命名為「可擴展標識語言」,即XML.

⑸ python 的優勢在哪裡

Python的優點
1、雖然Python可能被粗略地分類為"腳本語言"(script language),但實際上一些大規模軟體開發計劃例如Zope、Mnet及BitTorrent,Google也廣泛地使用它。Python的支持者較喜歡稱它為一種高級動態編程語言,原因是"腳本語言"泛指僅作簡單程序設計任務的語言,如shellscript、VBScript等只能處理簡單任務的編程語言,並不能與Python相提並論。
2、python嚴格說叫CPython,與C/c++有天然的融合性。這也是python強大的原因之一。在windows環境下可以使用ironpython,這個版本與vc可以結合的比較好。其它的平台可以使用eclipse,不過最好還是直接使用普通的文本編輯器。比較推薦的一個編輯器是sublime text2, geany, vi等。
3、python圖形化編程不難。當然MFC也不難。我不認為MFC有多難。其實學習起來只是略難,但是這不是一個數量級的。MFC可以生產出非常強勁的界面。而python界面多屬於簡單的。
4、Python本身被設計為可擴充的。並非所有的特性和功能都集成到語言核心。Python提供了豐富的API和工具,以便程序員能夠輕松地
使用C語言、C++、Cython來編寫擴充模塊。Python編譯器本身也可以被集成到其它需要腳本語言的程序內。

5、在設計Python語言時,如果面臨多種選擇,Python開發者一般會拒絕花俏的語法,而選擇明確的沒有或者很少有歧義的語法。由於

這種設計觀念的差異,Python源代碼通常被認為比Perl具備更好的可讀性,並且能夠支撐大規模的軟體開發。這些准則被稱為Python格

言。在Python解釋器內運行import this可以獲得完整的列表。

6、Python既支持面向過程的函數編程也支持面向對象的抽象編程。在面向過程的語言中,程序是由過程或僅僅是可重用代碼的函數構建

起來的。在面向對象的語言中,程序是由數據和功能組合而成的對象構建起來的。與其他主要的語言如C++和Java相比,Python以一種

非常強大又簡單的方式實現面向對象編程。

7、可擴展性和可嵌入性。如果你需要你的一段關鍵代碼運行得更快或者希望某些演算法不公開,你可以把你的部分程序用C或C++編寫,

然後在你的Python程序中使用它們。你可以把Python嵌入你的C/C++程序,從而向你的程序用戶提供腳本功能。

8、豐富的庫。Python標准庫確實很龐大。python有可定義的第三方庫可以使用。它可以幫助你處理各種工作,包括正則表達式、文檔

生成、單元測試、線程、資料庫、網頁瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV文件、密碼系統、GUI(圖形用

戶界面)、Tk和其他與系統有關的操作。記住,只要安裝了Python,所有這些功能都是可用的。這被稱作Python的「功能齊全」理念。

除了標准庫以外,還有許多其他高質量的庫,如wxPython、Twisted和Python圖像庫等等。

9、Python確實是一種十分精彩又強大的語言。它合理地結合了高性能與使得編寫程序簡單有趣的特色。

10、規范的代碼。Python採用強制縮進的方式使得代碼具有極佳的可讀性。

⑹ 什麼是Python解釋器如何使用Python解釋器互動式測試Python代碼

摘要 什麼是python互動式解釋器

⑺ python用什麼解釋器

Python的編輯器也是眾多的,下面說下幾種:

  • 提問者使用的是dos的編輯器,這一種當然不舒服;

  • Python的自帶的有兩種:

    2.1 Shell形式:這一種和dos一樣很糾結,如下圖:

  • 其他的第三方,比如Eclips+PyDev等;

  • 個人建議你使用2.2裡面的Edit模式,啟動方法是:

    開始--所有程序--Python--IDLE(PythonGUI)。

⑻ Python解釋器有哪些

python 解釋器很多種,最廣泛運用的有:
1、CPython
當我們從Python官方網站下載並安裝好Python 2.7後,我們就直接獲得了一個官方版本的解釋器:CPython。這個解釋器是用C語言開發的,所以叫CPython。在命令行下運行python就是啟動CPython解釋器。
CPython是使用最廣的Python解釋器。教程的所有代碼也都在CPython下執行。
2、IPython
IPython是基於CPython之上的一個互動式解釋器,也就是說,IPython只是在交互方式上有所增強,但是執行Python代碼的功能和CPython是完全一樣的。好比很多國產瀏覽器雖然外觀不同,但內核其實都是調用了IE。
CPython用>>>作為提示符,而IPython用In [序號]:作為提示符。
3、PyPy
PyPy是另一個Python解釋器,它的目標是執行速度。PyPy採用JIT技術,對Python代碼進行動態編譯(注意不是解釋),所以可以顯著提高Python代碼的執行速度。
絕大部分Python代碼都可以在PyPy下運行,但是PyPy和CPython有一些是不同的,這就導致相同的Python代碼在兩種解釋器下執行可能會有不同的結果。如果你的代碼要放到PyPy下執行,就需要了解PyPy和CPython的不同點。
4、Jython
Jython是運行在Java平台上的Python解釋器,可以直接把Python代碼編譯成Java位元組碼執行。
5、IronPython
IronPython和Jython類似,只不過IronPython是運行在微軟.Net平台上的Python解釋器,可以直接把Python代碼編譯成.Net的位元組碼。
6、qpython用於在手機上編程。

熱點內容
我的世界伺服器房間號2020電腦版 發布:2025-01-24 01:28:05 瀏覽:398
微信提示存儲空間不足 發布:2025-01-24 01:19:53 瀏覽:963
安卓電腦管家如何清除緩存 發布:2025-01-24 00:55:42 瀏覽:148
怎麼上傳歌曲到qq音樂 發布:2025-01-24 00:45:30 瀏覽:65
養貓用什麼配置 發布:2025-01-24 00:37:58 瀏覽:812
pythongps 發布:2025-01-24 00:37:51 瀏覽:813
辦公編程滑鼠 發布:2025-01-24 00:37:07 瀏覽:386
wpa加密類型 發布:2025-01-24 00:35:58 瀏覽:960
如何用批處理實現ftp映射盤符 發布:2025-01-24 00:25:45 瀏覽:954
win7sql版本 發布:2025-01-24 00:22:16 瀏覽:499