開始使用 Python 開發 Web 應用
Python是一個通用程式語言,並很快成為每個自重程式設計師寶庫中的一個必需品。
Python中有數不清的Web框架,從基本的微小架構到完整的架構,它們自有各自的優點。那麼你準備使用它來做一些web開發,但在探討細節之前,讓我們從頭開始。
學習Python的基礎
截至目前,Python有兩個版本,2.7.5和3.3是目前Python的穩定版本。你選擇哪個學習並不重要,因為區別非常小——尤其對於初學者而言。但你應該知道,雖然Python 2有非常非常多的第三方支援,Python 3是設計語言的開發者關注的重點,很多第三方支援還沒有移植到Python 3。這個選擇需要你做出決定。然而,學習任何新的語言都會是一件令人卻步的任務,找到合適的地方和人並從中學習是成功的一半。這是這篇指南的用處。讓Python簡單、有趣並易於學習是你的藍圖。
對於初學者,Python 2和Python 3最大的不同很可能就是Python 2使用print不需要加括號,而Python 3需要,但就這麼多。
1. Codecademy python課程
Codecademy做了一項偉大的工作,將python的課程放在了一起,這對於初學者快速入門Python非常有用。
2. ScreenCasts
對於絕對的初學者,有一些非常棒的截圖視訊。
我學習python時參考的一些截圖視訊是:
兩個教程非常優秀,你甚至可以在學習完這兩個系列後開始編寫指令碼。非常建議觀看下那些教程,它們是免費的,同時也是你將來參考時的非常好的資源。
3. Python的官方網站
當然,沒有比官方python.org的文件更加好的資源了。但並不推薦給初學者,因為涉及的概念更加深入和高階,但它仍然是最好的資源。
有了這個,你將擁有一些python知識,知道在python中怎麼樣處理東西。
讀一些書
有過剩的免費高質量的電子書可供選擇。下面的快捷清單列出了一些最好的書。你可以免費下載它們的電子版,或者如果你想支援作者的話,你也可以選擇購買紙質書籍(或者捐贈),我相信他們將非常感激這種方式。
Think Python: How to Think Like a Computer Scientist
Think Python涉及理論方面的知識稍微多些。這可能會讓初學者有些沮喪,但這本書在演算法原理和高階概念上的相關知識非常值得一讀。
如果“邊學邊做”是你的方式,那麼構建自己的遊戲將會是一個非常值得的經歷!在這本書中,AI Sweigart假設沒有Python的知識,並全程帶領你構建自己的遊戲。
熟悉StackOverFlow
StackOverFlow不僅僅全是“新手”錯誤和問題;有一些非常聰明並樂於助人的人也在使用這個網站——從他們身上學習!
例如,看一下 Python的隱藏特性這個問題。
你這裡看到的很多提示和技巧可能很多正式的教程不會涉及,但它們對於中高階Python使用者非常有用。
進入Web開發
現在你完成了Python忍者訓練,準備深入Ptyhon的Web開發,但現在的問題是有很多的框架,從中選擇最好的框架非常困難,但從初學者的角度出發,Flask基本Web框架將非常適合Web開發入門,因為你僅僅需要知道Python就可以開始,而你已經學了很多知識了。
在你學習完Flask框架後,你將會知道建立靜態頁面非常簡單,這是下一個問題出來了,使用它建立下一個web2.0的大應用合適麼?答案是Yes,你可以用Flask建立任何你想的應用,但在通過很多步的努力之後,你會發現,你已經成功的重新建造了一個已經有的輪子,但它給予你巨大的靈活性和力量,一開始你可能會感覺勢不可擋,而這也是很多初學者選擇Django,然後在六個月左右換了其他的框架。
你可以讀一下這個,知道哪些網站是由Flask驅動的
The largest site built with Flask
儘管Django和Pyramid也擅長Web開發,但他們是專為高階使用者設計,而不是僅僅學習編寫了幾行python的初學者。但如果你想認真學習Web開發,學習Flask是個很好的入門框架,因為它不抽象任何事物,也沒有任何魔法。
常用的庫和工具
如果你要做的工作是計算密集型的,那麼你會發現Python的效能是一個瓶頸,這時候你就需要PyPy。PyPy是Python直譯器的一個替代品,可以有效加快處理速度。
這兩個庫通常是一起使用的(SciPy依賴於NumPy)。如果你需要做一些複雜的數值計算或科學研究工作,那麼這兩個庫將是你的案頭好友。NumPy和SciPy擴充套件了Python的數學函式功能,可以大大提高你的工作效率。
正如其名,BeautifulSoup確實是非常優雅的。如果你需要解析一個HTML頁面來獲取一些資訊,你應該知道這是非常煩人的事情。BeautifulSoup的作用就是為你做這些事情,併為你節省時間。強烈推薦使用。
The Python Image Library (PIL)是一個用來處理幾乎所有影象操作的擴充套件庫。如果你需要處理一個影象,PIL可以為你做很多。
瞭解了這些之後,你可以走上你自己的Python之路。
一些Web開發庫
SQLAlchemy是Python的一個SQL和物件關係對映(ORM)工具集。它功能強大,並且很靈活,使得應用程式開發者可以方便地進行SQL操作。
Alembic是一個輕量級的資料庫整合工具,主要和SQLAlchemy協同使用。
結論
今天就到此為止,歡迎隨時分享你的想法。
原文地址:http://pypix.com/python/get-started-python-web-development/
相關文章
- Python Web開發:從 wsgi 開始PythonWeb
- 從零開始學Python:19課-使用PyCharm開發Python應用程式PythonPyCharm
- 開發Web應用Web
- “Python Web應用開發框架Django速成”公開課PythonWeb框架Django
- 《Flask Web開發 基於Python的Web應用開發實戰》簡評FlaskWebPython
- 使用 Flutter 開發簡單的 Web 應用FlutterWeb
- 開始使用Web WorkersWeb
- 在安卓開發中開始應用NFC安卓
- 開始使用ASP.NET Core - 建立第一個Web應用ASP.NETWeb
- 使用JavaServer Pages2.0開發Web應用 (轉)JavaServerWeb
- 《Django 3 Web應用開發從零開始學(影片教學版)》簡介DjangoWeb
- 從零開始構建Web應用-PART 1Web
- 《Flask Web開發:基於Python的Web應用開發實戰》學習筆記(二)FlaskWebPython筆記
- dotnet core使用開源元件FastHttpApi進行web應用開發元件ASTHTTPAPIWeb
- 讀了《JavaScript Web 應用開發》JavaScriptWeb
- WEB應用開發中的ServletWebServlet
- 急聘JAVA Web應用開發高手JavaWeb
- 利用ASP開發Web應用 (轉)Web
- Web開發從學些JavaScript開始WebJavaScript
- 使用 Nginx + Lua(OpenResty)開發高效能Web應用NginxRESTWeb
- 低程式碼應用程式開發開始興起
- 青少年如何使用 Python 開始遊戲開發Python遊戲開發
- Node助力Web應用開發——在新的開發平臺,打造高效能Web應用Web
- Web | 淺談用Python進行Web開發WebPython
- 用JavaServer Faces開發Web應用(4) (轉)JavaServerWeb
- 用JavaServer Faces開發Web應用(3) (轉)JavaServerWeb
- Python 如何開發高效漂亮的輕量級 Web 應用?PythonWeb
- 使用SAP UI5 Web Components開發React應用UIWebReact
- 開發Web應用程式中Cookie使用的問題 (轉)WebCookie
- Yeoman:Web 應用開發流程與工具Web
- Web應用的元件化開發(一)Web元件化
- Web應用的元件化開發(二)Web元件化
- 使用Python開始機器學習Python機器學習
- Python Web開發PythonWeb
- 使用Taro開發鴻蒙原生應用——快速上手,鴻蒙應用開發指南鴻蒙
- 使用 Taro 開發鴻蒙原生應用 —— 快速上手,鴻蒙應用開發指南鴻蒙
- 使用 Flutter 加速應用開發Flutter
- 開發Web應用為什麼要用TypeScript?WebTypeScript