Hi枷踏,小伙兒菩暗,這是咱們 Pythonn 之旅的第一篇文章。
首先旭蠕,咱們看看這趟旅程的總體思路:
- 第一部分停团,計算機的基礎(chǔ)知識。任何程序開發(fā)掏熬,都要對計算機的硬件和軟件系統(tǒng)有一個基本的了解佑稠,這是編程的基礎(chǔ);
- 第二部分旗芬,編寫第一個 Python 程序舌胶。咱們選擇 Python 作為編程學(xué)習(xí)的開始,那它一定有些了不起的“特長”岗屏。當(dāng)然辆琅,我們也要搭建一個最基本的編程環(huán)境,將學(xué)習(xí)到的知識这刷,親自編寫并運行起來婉烟;
- 第三部分,了解 Python 的“工具箱”暇屋。任何程序似袁,小到輸出一句話,大到編寫一個游戲或網(wǎng)站咐刨,都是由一些最基本的語句組成的昙衅。當(dāng)然,這些語句要遵循一定的規(guī)則定鸟,也就是語法而涉;
- 第四部分,了解 Python 的“積木”联予。在這個部分啼县,咱們會學(xué)習(xí)函數(shù)和對象是什么東東,如何接收鍵盤的輸入沸久,程序出現(xiàn)異常的時候該怎么處理季眷,等等。這些知識的確有一些難度了卷胯,但我相信咱們結(jié)合一些實際的例子子刮,也能逐漸理解這一部分,不用擔(dān)心窑睁;
- 第五部分挺峡,用 Python 做一些有意思的事葵孤。經(jīng)過前面的學(xué)習(xí),我們對 Python 算是有了基本的掌握沙郭,好比 1-3 年級佛呻,我們學(xué)習(xí)了很多的漢字、組詞和成語病线,接下來就可以嘗試讀更復(fù)雜的文章吓著,寫更大段的作文了。我列舉了幾個初步的想法送挑,比如編寫一個乘法表绑莺,做一個小游戲,便一個自己的小網(wǎng)站惕耕,等等纺裁。這需要綜合應(yīng)用前面學(xué)到的知識,并付出更多的思考司澎,但這個過程將是無比的有趣欺缘。
我畫了一個思維導(dǎo)圖:
那么,讓我們出發(fā)吧挤安!
Python 之旅的第一部分谚殊,我們講三個事情:
- Python 確實挺厲害
- 搭建 Python 的編輯和運行環(huán)境
- 第一個 Python 程序 —— “Hello World”
一、Python 確實挺厲害蛤铜!
世界上到底有多少種編程語言嫩絮,其實一直都沒有標(biāo)準(zhǔn)的答案,據(jù)說有幾千種吧围肥,但主要使用的剿干,其實只有大概幾十種。即使在這幾十種編程語言之間穆刻,流行程度也有很大的差別置尔。下面是2022年5月份統(tǒng)計的編程語言流行度榜單:
要特別說明下,TIOBE 排行榜氢伟,僅僅代表流行度撰洗,并不代表語言本身的好壞。這就好比每個小朋友腐芍,都有他(她)的優(yōu)缺點,不能簡單的下結(jié)論试躏。編程語言也是一樣猪勇,有的領(lǐng)域很好用,換個領(lǐng)域就未必颠蕴。比如 MATLAB泣刹,在數(shù)學(xué)家眼中就是極為好用的工具助析,但在網(wǎng)頁設(shè)計師眼中,簡直弱爆了椅您。
在 TIOBE 榜單中外冀,Python 排在第一名,是當(dāng)前這個世界上最流行的編程語言掀泳。Python 的確有不少優(yōu)點雪隧,我感覺,特別突出的有下面四點:
1. 用途廣泛
Python 可以用在社會的方方面面员舵,比如Web網(wǎng)站開發(fā)脑沿、游戲開發(fā)、大數(shù)據(jù)分析马僻、科學(xué)研究庄拇、人工智能(AI)、網(wǎng)絡(luò)通信韭邓、IT維護等等措近。世界上很多著名的程序都是由 Python 開發(fā)的,比如大名鼎鼎的圖片和視頻分享應(yīng)用 Instagram女淑,美國最大的娛樂瞭郑、社交及新聞網(wǎng)站 Reddit、為世界服務(wù)的網(wǎng)約車平臺 Uber诗力、全球最大的云音樂應(yīng)用 Spotify(和網(wǎng)易云音樂一樣)……
2. 效率極高
相比很多流行語言凰浮,編寫同樣功能,Python 包含的代碼行更少苇本,而且語法相對也更為簡單一些袜茧。我們舉個例子吧,分別用 Java 和 Python 編寫一個最簡單的程序 —— 在屏幕上輸出 “Hello World”瓣窄。
下面是使用 Java 編寫的代碼
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
下面是使用 Python 編寫的代碼
print("Hello, World!")
另外笛厦,工整美觀的程序代碼,往往更容易讓自己和其他人理解俺夕,這就是可讀性裳凸。想象你作業(yè)中那些七扭八歪的部分,一定讓老師很郁悶劝贸,有時候自己也忘了當(dāng)時寫的是什么姨谷。而可讀性就體現(xiàn)了一種編程語言對效率的重視態(tài)度。咱們看看 Python 為了強制你寫出規(guī)范和清晰的代碼映九,都干了什么梦湘。
我們寫代碼的時候,會通過不同的縮進(本質(zhì)上就是空格)來表示不同的代碼片段,Python 中沒有用其他編程語言中廣泛使用的“花括號”捌议,而是通過空格數(shù)量哼拔。在 Python 中,同一代碼塊的語句縮進必須完全一致瓣颅,否則程序就會運行出錯:“ IndentationError: unexpected indent” 和 “IndentationError: unindent does not match any outer indentation level”倦逐。因此說 Python 真是一個嚴格的好老師!
# 1. 同一邏輯層級宫补,縮進空格數(shù)相同檬姥,沒有問題
if True :
print("You are right") # 我是7個空格
print("You are right") # 我是7個空格
# 2. 同一邏輯層級,縮進空格數(shù)不同守谓,編譯錯誤
if True :
print("You are right") # 我是7個空格
print("You are right") # 我是8個空格
>>> IndentationError: unexpected indent
# 3. 縮進空格數(shù)和任何一個代碼塊都不能匹配穿铆,編譯錯誤
if True :
print("You are right")
else :
print("You are wrong")
print("Am I right") # 我跟哪段邏輯都不搭界
>>> IndentationError: unindent does not match any outer indentation level
3. 社區(qū)發(fā)達
Eric Matthes 在《Python 編程,從入門到實踐》這本書中說了這樣一段話:
我依然使用 Python 的一個最重要的原因是斋荞,Python 社區(qū)有形形色色充滿激情的人荞雏。對程序員來說,社區(qū)非常重要平酿,因為編程絕非孤獨的修行凤优。大多數(shù)程序員都需要向解決過類似問題的人尋求建議,經(jīng)驗最為豐富的程序員也不例外蜈彼。需要有人幫助解決問題時筑辨,有一個聯(lián)系緊密、互相幫助的社區(qū)至關(guān)重要幸逆,而對于像你一樣將 Python 作為第一門語言來學(xué)習(xí)的人而言棍辕,Python 社區(qū)無疑是堅強的后盾。
正是因為社區(qū)的強大还绘,因此你會發(fā)現(xiàn)楚昭,幾乎任何稍微復(fù)雜一點的事情,Python 都有現(xiàn)成的庫——程序庫是一個重要的概念拍顷,我們在后面會單獨來講——這可以幫助我們節(jié)約不少的時間抚太,比如數(shù)據(jù)計算和分析中使用到的 NumPy 和 SciPy,在 Web 開發(fā)中使用的 Django昔案,還有一些極高專業(yè)度的庫尿贫,如scikit-learn 適用于機器學(xué)習(xí),而 nltk 適用于自然語言處理踏揣,等等庆亡。
Python 也有很多很棒的學(xué)習(xí)資料,比如 “菜鳥教程” 社區(qū)捞稿。
其實身冀,編程語言最好的學(xué)習(xí)資料钝尸,往往都是官網(wǎng)文檔,但主要都是英文搂根,所以,你需要一直好好的學(xué)習(xí)英文铃辖。
4. 一個好爸爸
Python 在全世界能夠得到廣泛的支持剩愧,強大的原因中,還有一個非常重要的因素娇斩,Python 還有一個“好爸爸” —— Google仁卷。
一種編程語言,就好比一個孩子犬第,良好的成長需要長期的精心呵護與細致培養(yǎng)锦积,而一個好的贊助商往往能幫助程序語言度過漫長的歲月。C# 的背后是微軟歉嗓,Java 的背后是 Oracle丰介,PHP 的背后是 Facebook,而 Python 背后則是Google鉴分。Google 從 2006 年開始大規(guī)模使用 Python哮幢,并建立了一個 Python 的社區(qū),提供免費的課程志珍,包括練習(xí)項目演講課件橙垢,相關(guān)視頻等,也經(jīng)常為 Python 打打廣告伦糯。誰想“欺負” Python柜某,得先過了 Google 這道關(guān)……
二、搭建 Python 的編輯和運行環(huán)境
從前敛纲,無論是 Python喂击,還是 Java,或者是 PHP载慈,我都會在自己的電腦上部署一個編程語言運行環(huán)境惭等,然后再進行一些看起來比較繁瑣的配置,最后往往還要安裝一個龐大復(fù)雜的編程工具——IDE(集成開發(fā)環(huán)境)办铡。今天辞做,早已是云計算和互聯(lián)網(wǎng)的時代,對于 Python 的學(xué)習(xí)寡具,我們不必這么復(fù)雜秤茅,互聯(lián)網(wǎng)能夠幫我們解決很多難題,只需要我們擁有一臺能夠上網(wǎng)的電腦童叠。
我們可以使用 TeamCode 在線編輯平臺框喳。我們在自己的電腦上什么都不必安裝课幕,只要有一個瀏覽器,就能夠開始進行編程的學(xué)習(xí)五垮,而且和在自己電腦上安裝的IDE幾乎是一樣的體驗乍惊。另外,在右上角也能夠看到放仗,這個平臺也可以支持 Python润绎、Java、PHP诞挨、Go莉撇、C/C++ 許多種編程語言。
下面是在這個平臺上編寫和運行 Python 程序的截圖
不過惶傻,隨著你學(xué)習(xí)的深入棍郎,我們在后面一定就會用到更強大的 Python 編寫和運行的工具,我們管它叫做 IDE银室,也就是 Integrated Development Environment —— 集成開發(fā)環(huán)境涂佃。Python 有一個非常厲害的 IDE,叫做 PyCharm粮揉,只不過巡李,咱們暫時先不會用到它》鋈希看看它的界面吧侨拦,比起上面提到的 TeamCode 在線編輯平臺要復(fù)雜很多。
三辐宾、第一個 Python 程序 —— “Hello World”
好啦狱从,打開在線編程平臺,試著敲進下面的這個代碼叠纹,然后點擊右上角的“運行”按鈕季研,Let's Go!
print("Hello, World!")
print("這是我的第一個Python程序誉察,它非常簡單与涡,僅僅是輸出一句話,^_^")
接下來持偏,我們就要進入真正的 Python 編程之旅啦驼卖,加油,小伙兒鸿秆!