Successfully reported this slideshow.
Your SlideShare is downloading. ×

Python 起步走

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
open() 與 io 模組
open() 與 io 模組
Loading in …3
×

Check these out next

1 of 26 Ad
Advertisement

More Related Content

Viewers also liked (20)

Advertisement
Advertisement

Python 起步走

  1. 1. 1. Python起步走 • 學習目標 – 選擇 2.x 還是 3.x? – 初識 Python 資源 – 認識 Python 實作 – 建立 Python 環境
  2. 2. Python 3的誕生 • 2008 年 12 月 3 日,新出爐的 Python 3.0 (也被稱為 Python 3000 或 Py3K) • 包含了許多人引頸期盼的新功能 • 其他語法與程式庫方面的變更,也破壞了 向後相容性 • 許多基於 Python 2.x 的程式,無法直接在 Python 3.0 的環境中運行
  3. 3. • Python 3.0 演進的指導原則 – 將處理事情的老方法移除,以減少特性的重複 – 做事時應該只有一種(也許也是唯一)明確的 方式」之條目
  4. 4. • 我要學 Python 3,還是 Python 2? – 在 Python 3.0 剛釋出沒多久的那段日子裏,答 案通常會是「學習 Python 2.x,因為許多程式 庫還不支援!」 – 許多介紹 Python 的入門文件或書藉,也不得 不同時介紹 Python 2 與 3 兩個版本 – 「2to3」也不能發現所有的問題
  5. 5. 從Python 3.0到3.5 • 官方的推動
  6. 6. • Python 2 可以試著from __future__ import想使用的模組 • 〈Python2orPython3〉整理了許多相容轉 換的相關資源 – Python 3.0 的一些較不具破壞性的特性,回饋 (backport)到 Python 2.6 之中 – Python 3.1 的特性,回饋到了 Python 2.7 之 中
  7. 7. • 回饋也會反過來從 2.x 至 3.x – 在 Python 3.3 中又支援了 u‘foo’ 來表示 unicode 字串,b‘foo’來表示 byte 字串 • 相容性同時在 2.x 與 3.x 之間前進著,試著 讓語法有更多交集。 • Python 3.x 本身也不斷地吸納社群經驗 – Python 3.3 中包含了 venv 模組 – Python 3.4 本身就包含了 pip – Python 3.5 更納入了 Type hints
  8. 8. 社群的接納 • 許多基於 Python 2.x 的程式庫或框架,這 段期間一直不斷地往 Python 3.x 遷移 – Django – Numpy – SciPy • 〈PYTHON 3 WALL OF SUPERPOWERS〉 – python3wos.appspot.com
  9. 9. • 新系統要開發時,究竟要基於 Python 2.x 或Python 3.x? – 建立良好的程式碼慣例 – 社群中還有著 six 這類的套件,可以寫出相容 2.7 和 3.x 的程式碼基礎 six
  10. 10. • Python 2.7 是 Python 2 的最後一個版本 (不會再有 Python 2.8了),且預計僅支 援至 2020 年 • 作業系統也開始進行相對應的處理動作 – Linux 目前多半同時預載了 Python 2.x 與 3.x
  11. 11. • 我要學習 Python 2.x 還是 Python 3.x? • 作個全面性的調查 – 就像在選擇一門語言,或者是調查某個程式庫 是否可以採用時,必須有著諸多考量,像是瞭 解其更新(Update)的時間、修改記錄 (Changelog)、修正問題(Issue)的速率、 作者身份等。
  12. 12. • 我要學習 Python 2.x 還是 Python 3.x? • 學習 Python 來說,可以先學 Python 3.x, 因為有了 Python 3.x 的基礎,將來若有必 要面對與學習 Python 2.x,並不會是件難 事
  13. 13. 初識社群資源 • Python 之父 Guido van Rossum – 首位享有 BDFL 封號的開放原始碼軟體創建者 – 對社群仍持續關注,在必要時能針對社群中的 意見與爭議提出想法與做出最後裁決 • Python 軟體基金會 – Python Software Foundation,常簡稱為 PSF – 推廣、維護與促進 Python 程式語言的發展, 同時也支持協助全球各地各式各樣 Python 程 式設計師與社群的成長 – 非營利組織,持有 Python 程式語言背後的智 慧財產權
  14. 14. • Python改進提案 – Python Enhancement Proposals,常簡稱為 PEPs – Python 的改進多是由PEP流程主導 – PEP 流程會收集來自社群的意見,為將來打算 加入 Python 的新特性提出文件提案 – 重要的 PEP 會經由社群與 Guido 審閱與評估, 決定是否成為正式的 PEP 文件
  15. 15. • Python 研討會 – 如果想要知道各地的研討會資訊,可 – 以從 PyCon 網站(www.pycon.org )開始 – 〈"PyCon Taiwan" in Taiwan〉可以看到台灣 Python 社群關注的重要研討會訊息 • Python 使用者群組 – PyTUG Wiki(台灣Python 使用者群組Wiki 網站) – PyTUG Groups(台灣Python 使用者群組論譠) – PyHUG Meetups(新竹Python 使用者群組) – Taipei.py Meetups(台北Python 使用者群組) – Tainan.py Meetups(台南Python 使用者群組)
  16. 16. Python 的實作 • CPython – Python 官方的參考實作 – 以C 撰寫的實作品 – 提供與 Python 套件(Package)與 C 擴充模 組的最高相容性 • PyPy – 使用 RPython(Restricted Python)來實現 – 目的在改進 Python 程式的執行效能,同時追 求與 CPython 的最大相容性
  17. 17. • Jython – 用 Java 實現的 Python – 能匯入、取用 Java 的相關程式庫,因而得以運 用 Java 領域中的各式資源 • IronPython – 可與 .NET 平台結合的 Python 開放原始碼實現
  18. 18. 下載與安裝 Python 3.5
  19. 19. 認識安裝內容

×