楊玉華的學習履歷(❁´◡`❁) - 111-1 大數據分析 - 6. Python 入門

夜四技企資三甲
1101AD005
楊玉華


歷程檔案 Portfolio

    6. Python 入門

    開始跟 Python 培養感情之前,首先我們必須先稍微瞭解一下它。當我們說「Python」時,其實可能代表一個「語言」,或者一個「使用 Python 這個語言的平台」。

    這是什麼意思?嗯,想想你的手機好了。現在的智慧型手機都有語音助理軟體,例如 iPhone SiriAndroid 也有 Google NowPython 也是類似這樣的東西。

         ┌─────────┐      │ 請多指教 │      └─v───────┘   ()   Python

    當我們想讓 Python 做事情時,就必須向它下指令。Python 不像 SiriGoogle Now 等等使用我們平常講的語言,而是使用特殊的語法。這個特別的語法也叫做 Python——它就是我們將要學習的程式語言。

    Python Shell

    我們通常會使用終端機來和 Python 溝通。方法有兩種:

    1.      我們可以一次要求 Python 執行一個指令。這和 Siri Google Now 有點像:我們要求 Python 做一件事情,然後 Python 就會告訴我們這件事情的結果(或者也可以叫他做就對了,不要回答)。我們通常把這種作法叫做「互動模式」。

    2.      如果我們很清楚想讓 Python 做什麼事,就可以把所有想做的事情寫在一個檔案裡面,然後告訴 Python 去做那個檔案裡寫的事情。這樣我們就不需要一直盯著電腦,讓 Python 一個口令一個動作,只要把想做的事情寫下來,其他就一切交給 Python

    我們在做網站時,通常會用方法 2——我們總不能一直盯著電腦,等著別人連上我們的網站,再告訴 Python 該怎麼辦吧!但是在這篇文章裡面,我們會使用方法 1 練習語法。別擔心,我們在最後面還是會用用看方法 2,感受一下它們之間的差異。

    進入互動模式的方法,是打開終端機,輸入下面的指令:

    python

    按下 Enter 鍵後,應該會看到類似下面的內容

    Python 3.4.1 (...)
    Type "copyright", "credits" or "license" for more information.
    >>>

    這代表 Python 已經啟動,進入了 Python shell。當我們要使用互動模式時,都必須在這個 Python shell 中進行。最後一行的 >>> 代表它已經準備接受你的下一個命令。

    在任何時候,只要你看到 >>> 符號,就可以輸入 exit() 並按 Enter,以退出 Python shell,回到原本的提示列。接著只要再輸入

    python

    就會重新回到 Python shell。不過要注意,Python 不會自動幫你記住之前的資料,所以如果你退出 Python shell,之前輸入過的東西就全部會消失,必須重新輸入!(我們之後會教你怎麼把資料存到不會消失的地方。)

    第一個 Python 指令

    我們來讓 Python 執行幾個指令看看。試著輸入 2 + 3,然後按 Enter。你會看到下面的結果:

    >>> 2 + 3 5

    這就是 Python 互動模式的標準流程。你問 Python 一個問題,然後它回答你。

         ┌───┐     ┌───────┐      │ 5 │     │ 2 + 3 │      └─v─┘     └──────v┘   ()                Python

    Python 畢竟是電腦程式,這種計算當然難不倒它。試試看一些更複雜的計算吧!下面是幾個例子:

    ·          

      • 4 * 5
      • 40 / (7 - 3) * 2
      • 2 ** 3

    麼意思?多試幾個數字,看看你能不能自己找到答案。

    解答:Python 除了加減乘除外,還懂得一些比較不常見的計算符號。例如 ** 代表「次方」,所以 2 ** 3 就是「2 3 次方」,也就是 2 * 2 * 2 = 8

    字串(Strings

    除了數字之外,Python 也可以處理文字,試著輸入你的名字:

    >>> 'I am a Django Girl' 'I am a Django Girl'

    我們把這樣的一段文字叫做「字串」。在 Python 中,字串必須用單引號(')或是雙引號(")包起來。因為按 Enter Python 中代表「執行這個指令」,所以字串中不能用 Enter

    思考一下:如果我們想在字串裡換行,又該怎麼辦?Python 提供了兩種方法。第一種叫做「跳脫字元」,Python 在遇到某些特定的字元組合時,會把它辨認成其他的意思,例如「換行」就可以寫成 \n(注意斜線的方向,不要寫成 /n)。另一種方法是使用「多行字串」,用三個單或雙引號把字串包起來。不過這些就是比較進階的語法,詳細可以參考官方文件對字串的說明

    我們可以用 + 把兩個字串連在一起。試試看:

    >>> 'Hello ' + 'Django' 'Hello Django'

    也可以用乘號(*)來重複一個字串:

    >>> 'Django ' * 3 'Django Django Django '

    或者更厲害的:

    >>> 'One little, two little,' + ' little Indians' * 3 + '.' 'One little, two little, little Indians little Indians little Indians.'

    你也可以問 Python 字串中有幾個字:

    >>> len('I am a Django Girl') 18

    噢,等等,這是什麼?上面這段程式,其實就等於問 Python'I am a Django Girl' 長度length,簡寫 len)是多少」。我們在使用 Python 時,有很多常常想問它的問題。為了方便我們使用,Python 為這些問題建立了一些捷徑,叫做「函式」。當我們使用函式時,會使用這樣的語法:

    函式的名字(受詞)

    在這裡,我們想問的事情是長度len),受詞是 'I am a Django Girl',所以就寫成

    len('I am a Django Girl')

    Python 內建了很多很多的函式可以讓我們使用。我們在後面會慢慢介紹。

    錯誤處理

    既然 len 是用來詢問長度,那麼能不能告訴我們數字有幾位數?

    >>> len(304023) Traceback (most recent call last):   File "<stdin>", line 1, in <module> TypeError: object of type 'int' has no len()

    好像沒有得到答案,而且 Python 還給了我們一些沒看過的訊息。

    恭喜你看到了第一個 Python 錯誤!這個錯誤告訴我們(最後一行冒號 : 後面的內容)整數integer,簡寫 int)沒有長度Python 不知道該怎麼回答,只好告訴我們錯誤訊息,請我們修改問題。

    思考一下:可是 304023 不是很明顯六位數嗎,為什麼 Python 不懂?回想以前的數學課(啊啊啊啊我知道這回憶不太愉快,對不起),數字有「進位」的概念,例如「十進位」的 5 和「二進位」的 101 其實是同樣的數值,但寫出來會不一樣。Python 不能亂假設你想用哪一種進位法,所以就放棄了。

    好吧,那怎麼辦?把數字轉換成字串就沒問題了!

    >>> len(str(304023)) 6

    我們在 len 函式當中,使用了 str 函式,str() 可以把東西轉換成字串;這下 len 函式就知道該怎麼做了。

    • str 函式把東西轉成字串
    • int 函式把東西轉成整數

    小提醒:我們可以把任何數字轉成文字,但不是所有文字都能轉成數字。想想看,如果我們輸入 int('hello'),會發生什麼事?實際試試看,驗證你的猜測對不對。

     


    參考資料來源  https://djangogirlstaipei.herokuapp.com/tutorials/python/?os=windows

    全部共 0則留言
    登入帳號密碼代表遵守學術網路規範


    文章分類 Labels


    最新文章 Top10

    中華科技大學數位化學習歷程 - 意見反應