Python學習手冊之Python介紹、基本語法(一)

清潔工老闆發表於2018-10-30

一、什麼是python?

python是一種高階的程式語言。它適合編寫一些應用程式,比如:網站程式設計,指令碼程式設計,科學計算和最近非常熱門的AI(人工智慧)。目前,Google,騰訊,百度,阿里巴巴,豆瓣都在使用它做為程式語言。

python是解析型語言。程式不需要編譯,程式在執行時才翻譯成機器語言並執行。

為什麼選用Python?Python是一種極少數能兼具簡單功能強大的程式語言。完成同一個任務,C語言要寫1000行程式碼,Java只需要寫100行,而Python可能只要20行。

到現在為止Python有三個不同的大版本,1.x,2.x和3.x。大版本主要是功能模組有大的變動,比如增加多個模組或者整體架構發生變化。在每個大版本的下面有一些小版本的變動,小版本的更新是為了增強效能,特性和修復Bug,比如從3.5升級到3.6。

目前使用的基本是2.x和3.x版本,目前官方確認Python2.x版本將在2020年1月1日終止支援。要確認自己電腦當前環境下的Python版本,可在命令列方式下輸入:Python -V

解析器是一種電腦程式,能夠把高階程式語言,像Python,一行一行直接轉譯成機器語言並執行。

在程式語言的世界裡,每一語言都有其程式設計規範,而所有的語言的語法都是採用英語做為關鍵字。這就意味著我們在寫程式碼時,輸入法需要調整為英語鍵盤,如果實在不行,請換一種輸入法。Python有它的程式設計規範,在下篇文章我們會學到它的程式設計規範。

在程式設計的時候,程式設計語法不能使用中文全形字元。比如:引號,逗號。

“ ,

上面兩個字元都是全形字元,逗號本身佔據一個很寬的空間,它和引號之間也沒空格。

,”

上面的例子裡兩個字元都是半形字元。

程式設計規範是大家都需要遵守的一種約束性協議,同時Python解析器也將程式設計規範來解析程式碼。

二、基本語法

第一個 Python 程式
程式設計師世界裡最著名的程式是什麼?當然是“Hello World”。這是個比較悠久的傳統,從1972年開始被無數人當做來到程式語言世界的第一個程式。

Python 使用print命令來輸出文字。
>>> print(`Hello world!`)
Hello world!
當你執行這段程式碼時,終端將輸出”Hello world!"。恭喜你來到精彩的Python程式設計世界!
文字輸出
語句print語句也可用於輸出多行文字。
>>> print(`Hello world!`)
Hello world!
>>> print(`Hello world!`)
Hello world!
>>> print(`Spam and eggs…`)
Spam and eggs…

Python 程式碼裡包括對 Monty Python`s Flying Circus(BBC 出品從1969年一直播放到1974年的英國電視喜劇)的引用,Python的作者Guido van Rossum是它的粉絲。這就是為什麼Spam 和 eggs 這兩個詞經常用作 Python 中佔位符的原因,而 foo 和 bar 則經常用於其他程式語言。

語句 print 也可以跟上多個字串,用逗號","隔開,就可以連成一串輸出:
>>> print(`The quick brown fox`,`jumps over`,`the lazy dog`)
The quick brown fox jumps over the lazy dog

簡單運算子
Python 有加減運算子 + 和 -。 在Python的控制檯下輸入加減法運算,按回車後輸出運算結果。

>>> 2 + 2
4
>>> 5 + 4 - 3
6
運算子兩邊的空格是為了閱讀更方便,無空格不影響程式的執行結果。

Python 也有乘法和除法運算子,* 表示乘法,/ 表示除法。和數學裡的優先順序一樣,使用圓括號表示優先運算。

>>> 2 * (3 + 4)
14
>>> 8 / 2
4.0
使用除法在 Python 裡會產生一個十進位制浮點數。

Python 同樣可以進行負數的運算,如同我們在數學裡一樣用減號 – 符號表示負數。

>>> -6
-6
>>> (-5 + 2) * (-4)
12
加號同樣可以放在數學的左邊表示這個數字是正數,但是習慣上不需要在數字前面放置加號來表示正數。

在除法中被除數為 0 將是Python 產生一個錯誤,計算將不產生結果。

>>> (17 + 13) / (-4 + 4)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: division by zero
如上所示,錯誤有出錯行數,最後一行訊息也指出產生錯誤的錯誤型別。
請仔細閱讀錯誤訊息,它告訴你程式在哪兒出錯了,我們可以快速找到錯誤原因並修復它。

浮點
在 Python 裡浮點用來表示非整數。我們用3.14 和 -1.1547 來表示浮點數。浮點數可以用小數或用除法來建立。小數點後第二位開始的最右邊 0 將被忽略, 0.1400000 會顯示0.14, 但17.0還是會顯示為17.0.

>>> 4 / 5
0.8
>>> 3.14000000
3.14
計算機有時候不能正確地儲存浮點數。Python提供 17 為小數精度的浮點。
>>> 4 / 2
2.0
>>> 6 * 8.0
48.0
>>> 1 + 3.125
4.125

在上一例子,兩個整數相除處理成浮點。兩個浮點的運算或整數和浮點的運算都被處理成浮點。

浮點數和整數運算中,Python 在運算時自動把整數轉換為浮點,這種隱式轉換操作是 Python 規則的一部分。在其它情況下如果要對其進行操作,通常必須手動轉換值。

 算術運算子

冪乘
除了加法、減法、乘法和除法Python也支援其它的運算,比如冪乘。冪乘也叫乘方,即求n個相同乘數的乘積運算。
比如3 ** 2,乘數是3, n為 2, 計算方式為 3 * 3,冪乘結果為9.冪乘運算子用兩個星號 ** 來表示。

>>> 2 ** 4
16
>>> 9 ** (1/2)
3.0

商和餘數
在 Python 裡我們使用除後取整運算子和取餘運算子來做商和餘數的運算。除後取整運算子用//來表示是商運算。取餘運算子用 % 來表示取餘運算。整數和浮點數都可以用來做除後取整和取餘運算。

下面程式碼表示 12 除於 5 商是 2,1.25除於 0.5 餘數是0.25。 

>>> 12 / 5
2
>>> 1.25 / 0.5
0.25

字串

一串字串(String)是字元(Characters)的序列(Sequence)。基本上,字串就是一串字元。

字串是以單引號‘’或雙引號“”括起來的任意文字,所有引號內的空間,諸如空格和製表符,都將按照原樣保留。比如‘abc’,“x y z”等等。請注意‘’或“”本身只是一種表示方式,不是字串的一部分。

>>> "Python is fun!"
Python is fun!
>>> `I like Python`
I like Python
你將會在幾乎所有你編寫的 Python 程式中使用字串,同時注意,字串是不可變的。

轉義字元

有些字元不能直接包含在字串,比如單引號不能直接放置在用單引號表示的 String 物件裡。這會使 Python 無法識別哪兒是字串的開始、哪兒是結束。

你必須指定這個單引號的 String 物件裡需要對單引號進行轉義。

>>> `I`m a boy!`
I`m a boy!

在上面的例子中我們對單引號進行了轉義,新增了轉義字元。

同樣如果在雙引號申明的 String 物件裡有雙引號需要對雙引號進行轉義。

>>> "She say:"I`m a girl!""
She say:"I`m a girl"

在上面的例子中我們把對話裡的雙引號進行了轉義,新增了轉義字元。

反斜杆也可用於轉義製表符、任意 Unicode 字元以及其他無法可靠列印的內容,這些字元稱為轉義字元。

換行

 Python 提供一種簡單的方法在字串裡建立換行符
。使用三個雙引號或單引號建立的字串保留原始的輸入狀態,在其裡面的回車被自動轉義成
。如下例:

>>> """Mother:Good morning.
Son:Good morning, mom!"""

`Mother:Good morning. 
Son:Good morning, mom!`
在三個引號表示的字串裡你不需要轉義字元,你可以在字串裡自由地使用單引號與雙引號,就像你正常的輸入一樣。Enter鍵在輸出裡也被
 轉義符自動轉義。

 輸入和輸出

 通常程式接受輸入並在處理後產生輸出。

你可以使用 print 函式來生成輸出,這將在螢幕上顯示其文字表現形式。

>>> print(1 + 2)
3
>>> print("Hello 
 World!")
Hello
World!
當輸出字串物件時,生成字串物件的引號不會被顯示。

輸入

 要從 Python 使用者獲得輸入,可以使用 input 輸入函式

 下面 input 函式提示使用者輸入,並以字串的形式返回輸入的內容(內容被自動轉義)。

>>> input("Enter something please: ")
Enter something please: I am a boy who
like girl!
`I am a boy who\nlike girl!`

 

 

“改變自己的世界,從一步一步做起”

相關文章