開始用JAVA的時候,因為什么都不了解,所以走了很多彎路,現(xiàn)在用python想把這篇文章分享出來,讓大家少走彎路,快速的入門。我看到大佬的一篇文章寫的很好,并且?guī)椭伊私饬撕芏?,一下是?nèi)容并附原網(wǎng)鏈接
鏈接:https://blog.csdn.net/sinat_38682860/article/details/94763300
編程這個東西是真的奇妙。對于懂得的人來說,會覺得這個工具是多么的好用、有趣,而對于小白來說,就如同大山一樣。其實這個都可以理解,大家都是這樣過來的。
那么接下來就說一下python相關(guān)的東西吧,并說一下我對編程的理解。本人也是小白一名,如有不對的地方,還請各位大神指出~
01
名詞解釋
如果在編程方面接觸的比較少,那么對于軟件這一塊,有幾個名詞一定要了解,比如開發(fā)環(huán)境、IDE、代碼編輯器、編譯器、調(diào)試器等等,我先列出來自百度百科關(guān)于這幾個詞的解釋。
開發(fā)環(huán)境:
軟件開發(fā)環(huán)境(Software Development Environment,SDE)是指在基本硬件和數(shù)字軟件的基礎(chǔ)上,為支持系統(tǒng)軟件和應(yīng)用軟件的工程化開發(fā)和維護而使用的一組軟件,簡稱SDE。它由軟件工具和環(huán)境集成機制構(gòu)成,前者用以支持軟件開發(fā)的相關(guān)過程、活動和任務(wù),后者為工具集成和軟件的開發(fā)、維護及管理提供統(tǒng)一的支持。
IDE:
集成開發(fā)環(huán)境(IDE,Integrated Development Environment )是用于提供程序開發(fā)環(huán)境的應(yīng)用程序,一般包括代碼編輯器、編譯器、調(diào)試器和圖形用戶界面等工具。集成了代碼編寫功能、分析功能、編譯功能、調(diào)試功能等一體化的開發(fā)軟件服務(wù)套。
所有具備這一特性的軟件或者軟件套(組)都可以叫集成開發(fā)環(huán)境。如微軟的Visual Studio系列,Borland的C++ Builder、Delphi系列等。
該程序可以獨立運行,也可以和其它程序并用。IDE多被用于開發(fā)HTML應(yīng)用軟件。例如,許多人在設(shè)計網(wǎng)站時使用IDE(如HomeSite、DreamWeaver等),因為很多項任務(wù)會自動生成。
編譯器:
簡單講,編譯器就是將“一種語言(通常為高級語言)”翻譯為“另一種語言(通常為低級語言)”的程序。一個現(xiàn)代編譯器的主要工作流程:源代碼 (source code) → 預(yù)處理器 (preprocessor) → 編譯器 (compiler) → 目標代碼 (object code) → 鏈接器 (Linker) → 可執(zhí)行程序 (executables)。
高級計算機語言便于人編寫,閱讀交流,維護。機器語言是計算機能直接解讀、運行的。編譯器將匯編或高級計算機語言源程序(Source program)作為輸入,翻譯成目標語言(Target language)機器代碼的等價程序。
源代碼一般為高級語言 (High-level language), 如Pascal、C、C++、Java、漢語編程等或匯編語言,而目標則是機器語言的目標代碼(Object code),有時也稱作機器代碼(Machine code)。對于C#、VB等高級語言而言,此時編譯器完成的功能是把源碼(SourceCode)編譯成通用中間語言(MSIL/CIL)的字節(jié)碼(ByteCode)。最后運行的時候通過通用語言運行庫的轉(zhuǎn)換,編程最終可以被CPU直接計算的機器碼(NativeCode)。
其實百度百科對于這幾個詞條的解釋已經(jīng)很透徹了,但是對于一些剛接觸程序的伙伴來說可能依然很難理解。
簡單點來說,以我們常見的JAVA語言為例,其實如果你想寫一個程序,如果你的電腦里已經(jīng)安裝了JDK,那么其實你已經(jīng)不需要任何其他的軟件就可以實現(xiàn)一些功能。
那有人會問,我看大家寫JAVA都用eclipse呀,沒錯,大家寫JAVA大部分人都用eclipse,但是要知道,那個軟件叫IDE,或者說就是一個編輯器,一個簡易版的eclipse是不會提供JDK的,JDK是需要我們自己單獨安裝的,這個JDK就是開發(fā)環(huán)境,你所編寫好的代碼,如果想編譯和運行,就需要JDK這個開發(fā)環(huán)境所支持,而eclipse是提供讓你編輯、調(diào)試、用JDK來編譯程序用的,也就是說,你用什么編輯器并不影響你程序的編寫,而這些編輯器是讓你提高效率,方便調(diào)試用的,這些是可選的,而開發(fā)環(huán)境是必選的。
02
Python開發(fā)環(huán)境
好了,我們長篇大論說了這么多關(guān)于其他語言的事情,為的就是能讓UP主理解軟件的關(guān)系,接下來我們好好聊聊Pyhton。
Python其實和其他的編程語言還有點不太一樣,它是一種腳本語言,就如同MATLAB語言一樣,我們也可以管它叫解釋型語言吧。
因此,python的運行的過程中,和我們的傳統(tǒng)語言,比如C、C++這種編譯型語言不太一樣,python的運行其實是一種解釋的過程,因此它需要解釋器。如果想運行Python程序,那么必不可少的就是Python的開發(fā)環(huán)境,
Python開發(fā)環(huán)境下載地址:www.python.org
03
Python IDE推薦
有了開發(fā)環(huán)境了,就需要有編輯器之類的軟件。其實在安裝Python開發(fā)環(huán)境的時候,就已經(jīng)自帶了一個編輯器,叫IDLE,不過老實講,這個編輯器用起來真的不是很舒服,尤其是編輯比較龐大的工程的時候。而且,萬能的記事本也可以編輯Python,但是我們肯定不能那么干對不?那么接下來就推薦幾款可以編輯python的編輯器。
notepad++:
Notepad++是 Windows操作系統(tǒng)下的一套文本編輯器(軟件版權(quán)許可證: GPL),有完整的中文化接口及支持多國語言編寫的功能(UTF8技術(shù))。
Notepad++功能比 Windows 中的 Notepad(記事本)強大,除了可以用來制作一般的純文字說明文件,也十分適合編寫計算機程序代碼。Notepad++ 不僅有語法高亮度顯示,也有語法折疊功能,并且支持宏以及擴充基本功能的外掛模組。
Notepad++是免費軟件,可以免費使用,自帶中文,支持眾多計算機程序語言: C,C++,Java,pascal,C#,XML,SQL,Ada,HTML,PHP,ASP, AutoIt, 等等很多。
notepad++的下載地址:Homenotepad-plus-plus.org
Eclipse(推薦):
Eclipse 是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運的是,Eclipse 附帶了一個標準的插件集,包括Java開發(fā)工具(Java Development Kit,JDK)。Eclipse并不限于編寫JAVA,它也可以編寫C、python等程序,而且Eclipse在編寫Python上很舒服,值得推薦。
Eclipse下載地址:The Eclipse Foundationwww.eclipse.org
PyCharm(推薦):
PyCharm是一種Python IDE,帶有一整套可以幫助用戶在使用Python語言開發(fā)時提高其效率的工具,比如調(diào)試、語法高亮、Project管理、代碼跳轉(zhuǎn)、智能提示、自動完成、單元測試、版本控制。此外,該IDE提供了一些高級功能,以用于支持Django框架下的專業(yè)Web開發(fā)。PyCharm在編寫和調(diào)試Python方面可謂是強者,軟件使用簡單,功能強大,值得推薦。
PyCharm下載地址:https://www.jetbrains.com/pycharm/
該軟件Pro版本為付費軟件,如果想免費使用,可以使用社區(qū)版。
VS Code:
Visual Studio Code (簡稱 VS Code / VSC) 是一款免費開源的現(xiàn)代化輕量級代碼編輯器,支持幾乎所有主流的開發(fā)語言的語法高亮、智能代碼補全、自定義熱鍵、括號匹配、代碼片段、代碼對比 Diff、GIT 等特性,支持插件擴展,并針對網(wǎng)頁開發(fā)和云端應(yīng)用開發(fā)做了優(yōu)化。軟件跨平臺支持 Win、Mac 以及 Linux。這個軟件太漂亮了,我忍不住要放一張圖。
VS Code軟件截圖
VS Code下載地址:code.visualstudio.com
Anaconda(推薦):
到最后,不得不再推薦一下Anaconda,這款軟件屬于一站式服務(wù),里面集成了Python的運行環(huán)境,并集成了100多種庫,此外該軟件里面還有Anaconda Navigtor、Jupyter notebook、qtconsole和spyder等,由于集成的功能比較多,用起來相對來說省心一些。
Anaconda下載地址:
https://www.anaconda.com/download/www.anaconda.com
希望這些對想入坑的伙伴們有所幫助。