一起來學Python吧

David和幾個小夥伴最近寫了個Python基礎課程,童鞋們可以關注一下。今天先來簡單聊聊Python。

Python簡介

在天碼營開始Python學習之前,先來簡單了解一下Python這門語言。在2017年舊金山召開的GitHub年度盛會GitHub Universe,GitHub公布了年度受歡迎編程語言排行,Python已經超過Java位居第二。隨著人工智慧大潮的到來,作為深度學習開發的主要語言,Python的勢頭必然會有增無減。

Python是由Guido van Rossum(著名的「龜叔」)在八十年代末九十年代初,在荷蘭國家數學和計算機科學研究所設計出來的。龜叔根據英國廣播公司的喜劇節目「Monty Pythons Flying Circus(蟒蛇飛行馬戲)」命名了這個語言。Python 由一個核心開發團隊在維護,龜叔依然起著至關重要的作用,指導其進展。

Python是一種簡單易學功能強大的編程語言,它有高效的高層數據結構,能夠輕鬆有效地實現面向對象編程。Python簡潔的語法和對動態輸入的支持,再加上解釋性語言的本質,使得它在大多數平台上的許多領域都是一個理想的腳本語言,特別適用於快速的應用程序開發。

Python不僅僅適合作為編程入門的語言,對於在天碼營學習希望掌握實戰開發技能進而從事編程工作的人來說,Python也是一個很不錯的選擇。

Python的特點

Python之所以說簡單易學,因為其設計之初就秉承了幾個重要的理念:

  • 追求高度的可讀性。與大多數語言不同,Python語言的語法要求程序代碼具有整齊優雅的形式,代碼的外在形式與內在意義緊密相關。在Python中外觀不整齊的代碼屬於編程錯誤,從而提醒編程人員避免很多錯誤。
  • 盡量避免「這件事可以有多種做法」。因此Python語言中很少冗餘成分,程序員通常情況下只有唯一的也是最好的語言元素可用。
  • Python語言同時支持過程式、面向對象式和函數式等多種編程范型,擁有豐富的標準庫來支持應用開發所需的各種功能。

這幾個理念保證了Python代碼清晰優美,易於理解和維護,具有功能強大的標準庫。此外Python具有良好的可移植性、擴展性等特性。對於初學者而言,重點了解Python的以下幾個特性:

  • Python是解釋型語言,Python 語句或程序(.py 文件)首先被解釋器翻譯成位元組碼(byte code),然後再由Python虛擬機來直接執行。
  • Python具有互動式的特性,可以從終端輸入執行代碼並獲得結果,從而互動的測試和調試代碼片斷,這對於初學者而言是巨大的福音。
  • Python既支持面向過程編程,也支持面向對象編程。

提高

與解釋性語言對應的是編譯型語言,Java和Python類似是解釋型語言,而C或C++語言就是編譯型語言,編譯器將源代碼轉換為機器語言,當運行程序時,通過連接器(Linker)載入和合成可執行代碼。而Python語言寫的程序不需要編譯成二進位代碼。你可以直接從源代碼運行程序。Python解釋器會把源代碼轉換成稱為位元組碼的中間形式,然後再把它翻譯成計算機使用的機器語言並運行。

Python的運行速度上相對於C++和C來說要慢一些。但是對於絕大多數領域,這一點相比Python帶來的開發效率而言,可以說是忽略不計的。如果你需要考慮Python性能問題的時候,你已經不需要在天碼營學習了。所以現在直接忽略這個問題就行了。

Python的應用情況

Python可以應用在Web開發、資料庫編程、GUI應用開發、科學與數值計、網路應用開發、遊戲與3D影像、遊戲開發等各類開發場景,可以說絕大部分場合Python都可以有用武之地。

豆瓣可能是國內深度應用Python的一個最知名的案例;YouTube和Instagram這兩個大型應用也是主要基於Python開發的。包括Google、Facebook、NASA(美國航空航天局)在內的諸多知名公司和機構也都大量地使用Python。總之呢,只要你喊的出名字的大型互聯網企業,肯定或多或少都在用Python做開發。天碼營網站後台雖然是Java,但是很多運維腳本也是Python開發。

總結一下,不管你是希望學習一門優雅的語言走進編程這個領域,還是希望掌握一門應用廣泛前景光明的技術,Python都值得你一試。

更多內容請見Python基礎課程

推薦閱讀:

Python爬蟲入門—分析Ajax爬取今日頭條美圖
國慶回家避免不了相親,使用python抓取婚戀網妹子決策點快速脫單
草根學Python(九) 面向對象
BAT機器學習面試1000題系列(71-75題)

TAG:Python入门 | Python | Python教程 |