使用Python進行網站開發入門指南

2021-01-07 琴心劍膽寫代碼

摘要:本文全面介紹了使用Python完成Web開發的基礎入門內容。以一個博客網站為例,講解了基於django框架完成網站開發的全過程,通過本文的學習,讀者就可以快速掌握使用django完成網站開發的方法。

本文有別於其他教程:網上大量django教程都非常全面,但是我們使用django開發一個中小型網站的時候,有許多東西並不會立即用到,所以可以暫時不用管它,本文就從這個點出發,抓住核心要點,讓大家在最短的時間內開發一個網站出來,然後再逐漸完善和發展,而不是要一口氣做一個大型系統。

本文假定你對計算機的基礎使用、對Python的基礎語法和基本使用、對資料庫的簡單使用有一定的基礎。如果你不是這種情況,可以先閱讀相關資料了解學習一下,掌握原理比較難,但是學會使用還是很容易的

圖片來自網絡

一、Python語言Web開發技術簡介

對於快速開發中小型網站,目前仍然有很多人在使用PHP,但是Python作為一門應用十分廣泛的程式語言,對於開發Web支持的十分好,尤其是能夠在完成前臺產品級開發的時候,能夠自動生成管理後臺,而且還自帶一套腳手架工具,真的美的不要不要的。在使用Python進行Web開發方面,django框架是首選,非常成熟,使用方便,開發效率一流。

二、django框架簡介

django項目的官網地址:https://www.djangoproject.com/在國內訪問第一次會有點慢,以後有緩存了就好多了。

在介紹和學習django框架之前,要特別提一句:django框架的文檔寫的非常好,而且還有官方版的簡體中文文檔,文檔地址:https://docs.djangoproject.com/zh-hans/3.0/這對於我們開發者來說,是巨大的福音。歡呼吧!

我一直看的是官方的英文文檔,因為我接觸django好多年了,最開始的時候是1.x,那個時候還沒有簡體中文版呢,這麼些年也習慣了。

django框架的logo

看這框架logo的產品口號:最後的完美Web框架。好牛叉的感腳有沒有。再來張大圖提提神:

django,一流框架

其實大家不要把使用django框架開發一個網站想的那麼複雜,寫起來其實很容易的,下面,讓我們正式開始吧。

三、完成一個Hello World

我們使用PyCharm作為開發工具,新建項目的時候,左側會有django的項目模板,點擊它,就可以了:

按模板創建項目

使用腳手架創建項目和管理項目的事情我們以後再說。腳手架功能很強大的。

現在我們只需要先編寫個Model,也就是數據模型,裡面定義好主鍵、欄位名稱、欄位類型等信息,類似於這樣:

主鍵id是可選的,我們先不寫它

這個模型對應表資料庫中的一張表,相當於這張表中有id、first_name、last_name三個欄位

再寫一個視圖函數:

視圖函數的作用就是為前端返回內容

現在,讓django能夠找到我們寫的視圖函數,操作手法很簡單,在框架創建的時候的urls.py中有一個urlpatterns,是個list,我們往裡添加我們的內容,按照人家已經給出的抄一行就是了,我寫的是這樣的:

我這裡寫了三個視圖函數

現在這個項目就可以跑起來了,你使用PyCharm創建的項目,可以直接點擊運行按鈕運行的,如果不能運行,也很簡單,在控制臺運行python manage.py runserver即可。

四、加入自己的業務邏輯

上面能跑的項目很簡單,但是相信大家已經掌握了思路,後續的業務開發,通常都是沒有技術難度,只有工作量。所以,限於篇幅,本文就不在這裡一一講解了,重要的是思路,大家按我說的思路去做,一定可以的。具體的步驟如下:

配置資料庫,讓框架能連上資料庫根據業務需求編寫數據模型,不必創建資料庫表根據業務需求創建視圖函數根據業務需求創建視圖模板文件,讓視圖函數加載和使用你寫的模板使用資料庫遷移命令,讓django根據你寫的模式自動創建資料庫至此,你的系統就能跑起來了,並且具備你想要的業務功能。

五、後續完善和發展

後續完善和發展的時候,我們要做的事情主要是這麼幾件:

按工程化規範管理你的項目,不要胡寫亂寫,挖的坑以後都要自己跳配置日誌,網站運行的時候,必須要有日誌,這樣出現問題才能排查註冊登錄,頁面跳轉機制的實現視圖模板文件的布局,當系統內功能比較複雜的時候,相同布局的頁面使用頁面布局進行管理,會方便很多安全機制

最後再強調一下

圖片來自網絡

大家一定要本著先簡後繁,先易後難的步驟進行,網上很多教程上來就把django的所有功能給你列個目錄讓你看,其實不太友好,挺費勁的。不要怕問題,不要怕報錯,沒關係的,讓它使勁報,報一個克一個,最後沒錯誤了,你一看,系統開發完了,而且竟然還沒有bug,豈不是又要驕傲了???網上其他教程,上來就給你講什麼是CGI,什麼是MVT模型等等之類的,其實對於django開發不熟的人來說,不太適合,當你把功能做完了,想要部署的時候,再去研究CGI不遲,當你系統發展的大了,想要優化的時候,再說MVT也不遲。

圖片來自網絡

相關焦點

  • 十六本python入門學習書籍推薦,python入門新手必看
    隨著人工智慧時代的到來,python程式語言一步登天衝到編程排行榜第一名,因此更多朋友想轉行學習python程式語言的朋友,可以一起看一下:python入門新手必看的十六本python入門學習書籍1、python基礎教程司維所著圖書:本書包括Python程序設計的方方面面,首先從Python
  • 入門Python, 看這些資料就夠了
    要入門Python,資料並非越多越好, 基本上看這些資料就夠了。 。目錄:第一部分: Python入門&進階教程第二部分: Python Web框架第三部分: Python擴展資料推薦的學習路徑: 1. 使用實驗樓的開箱即用環境快速刷完Python3簡明教程,django基礎教程;2.
  • 一步步教你開始使用Python開發Web應用
    這是這篇指南的用處。讓Python簡單、有趣並易於學習是你的藍圖。  對於初學者,Python 2和Python 3最大的不同很可能就是Python 2使用print不需要加括號,而Python 3需要,但就這麼多。  1.
  • python自學指南
    這是一篇 python入門指南,針對那些沒有任何編程經驗,從零開始學習python的同學。不管你學習的出發點是興趣驅動、拓展思維,還是工作需要、想要轉行,都可以此文作為一個參考。通過自學,你只要在幾分鐘內就可以正常運行一個基本的python程序;再過1個月,你甚至都可以成為技術大拿了!
  • python入門
    「如果將Python世界分成幾個大陸,那麼可能有 科學和金融學大陸、系統管理大陸和Web開發大陸等。」
  • 針對 Quant 的 Python 快速入門指南
    作者:用Python的交易員最近有越來越多的朋友在知乎或者QQ上問我如何學習入門Python,就目前需求來看,我需要寫這麼一篇指南
  • Python推薦書籍從入門到進階(珍藏版)
    2.《Python編程:從入門到實踐》本書的講解很到位,不過就是在對一些簡單知識點的講解方面投入了過多的筆墨。書中練習的原始碼下載地址:ehmatthes.github.io/pcc這是英文版的勘誤表【網站:nostarch.com/pythoncras】:
  • 一份Python入門學習指南
    近期,數據科學網站KDnuggets發布了2018數據科學和機器學習工具調查結果:Python榮登第一,成為最受青睞的分析、數據科學、機器學習工具
  • 中文版Google App Engine入門指南(1)
    Google App Engine入門指南包括以下幾個部分:介紹 編程環境 Hello, World!而且是免費的,只要你上傳你的程序,你的網站就可以和用戶見面了,不需要任何付款和投入。在Google App Engine入門指南中,你將會創建一個用戶留言簿,它可以讓用戶在公共的留言板上發表留言。用戶可以匿名留言,也可以使用他們的Google帳戶留言。
  • Python開發簡單爬蟲【學習資料總結】
    使用HTTPCookieProcessor; 需要代理才能訪問的網頁使用ProxyHandler; 需要HTTPS加密訪問的網站使用HTTPSHandler; 有些URL存在相互自動跳轉的關係使用
  • Python快速入門的方法
    import一個easygui,初學者分分鐘做個圖形界面出來,對於初學python,成就感!!1.進階入門當你看完上面那些書,對於Python也有了一定了解,已經不再是個零基礎的小白了。這個時候,你就可以開始看《Dive into Python》、《Leaning python》、《Python Doc》等稍微深一點的書,當然還是在基礎階段。
  • 【Python環境】python的nltk中文使用和學習資料匯總幫你入門提高
    資料3.3: Classify Text With NLTK http://blog.csdn.net/fxjtoday/article/details/5862041 別看標題是英文的, 實際上內容是中英文混合的, 不過這個比上面一篇簡單些. 主要就是使用nltk對一些姓名 性別進行訓練, 並預測測試語料中的姓名是啥性別. 這篇文章能夠讓你對 分類, 樣本特徵稍微有個初步入門.
  • 學python?不是一個python入門教程就行,學之前你必須知道這些
    第一 學習方向:python應用方向很多,必須明確學習方向想全棧開發:就是web應用開發,是用來寫網站後臺的數據分析:三秋道果_python自學教程指南第二 學習目標:是自我提升還是轉行就業,目的不一樣選擇的是有「巨大」區別的
  • 一個完整的Django入門指南
    前言今天我將開始一個關於 Django 基礎知識的全新系列教程,這是一個開始學習 Django 的完整入門指南,教程材料一共會被分為七個部分。我們將從安裝、開發環境的準備,模型,視圖,模板,URL到更高級的主題(如遷移,測試和部署)中詳細探討所有基本概念。
  • 程式設計師大神分享零基礎如何30天入門快速學習python
    零基礎如何30天入門快速學python?一:明確自己的學習目標不管我們學習什麼樣的知識,都要對自己的學習目標有一個明確的認識。掌握 if、else、elif、while、for、continue、break和列表推導式等這些語句的使用,還有程序中的異常處理。四、面對對象知識面對對象OOP,更高層次的Python程序結構,代碼的重用避免代碼冗餘,打包你的代碼,函數的參數、作用域等。
  • Python 密碼學入門書籍
    今天,就和大家推薦一本免費密碼學編程書籍,還是使用Python程式語言的——《Python密碼學編程》這是是一本有關密碼學、計算機編程和Python程式語言的免費入門教科書,由舊金山的軟體開發人員Albert Sweigert編寫。
  • 極速體驗|VS Code+Python敏捷開發
    VS Code在前端開發中,有一個非常好用的工具——Visual Studio Code,簡稱VS code。很多人使用後都會感嘆「用VS Code 寫代碼是真好用、真爽。」它是一款當下流行、十分出色的ide開發工具。
  • 從零開始的python爬蟲速成指南
    在前言:最近後臺有人留言問:有沒有python爬蟲的相關教程,爬蟲不是我專業方向,很多不是很熟悉,而網上很多資料講的過於散亂,不能很好的系統性學習爬蟲,而且水平參差不齊。特委託一位熟悉爬蟲的小夥伴,幫忙把關,將網上現有資料進行整合,整理了一份相對比較系統的資料。
  • 適合新手學習的Python爬蟲書籍
    本書是一本針對所有層次的Python讀者而作的Python入門書。《用Python寫網絡爬蟲》作為使用Python來爬取網絡數據的傑出指南,講解了從靜態頁面爬取數據的方法以及使用緩存來管理伺服器負載的方法。
  • 零基礎Python入門教程 - 第三節 搭建Python開發環境
    今天教大家搭建自己的Python開發環境,Python作為跨平臺語言,目前支持Windows、Linux、Mac/OS系統,考慮到後兩個系統使用門檻高,而大家對Windows的使用相對不是那麼陌生,所以我們就以Windows環境為例進行講解。