前言
上一節中,我們強烈推薦Python作為web開發的主要編程語言。接下來,我們將開始一步步安裝和配置Python項目開發環境,并使用VSCode作為IDE工具,快速上手Python的WEB開發之旅。
最新消息:2018 IEEE頂級編程語言交互排行榜發布,Python衛冕成功,C++異軍突起,雄踞第二,C語言和Java則退位讓賢,分據第三和第四。
編外語:在實施內部綜合服務型網站項目(代號為ROBIN)中,我們在充分考慮和權衡的基礎上,采用了上節所述的開發框架和技術選型,并對內部團隊開展了如下的初訓和實戰內容的學習,在一個月的時間內,團隊已經掌握了前后端分離開發方式,并進入了開發狀態。在隨后的文章中,我們將逐步解析和跟蹤項目的開發進展過程與大家分享,未來也可能會在適當的時候將項目開源,讓更多的人參與到項目中來,推動項目不斷進步和發展。
學習目標
在Windows操作系統下,實現Python開發環境的安裝和配置,熟練使用VSCode編輯器進行Python項目開發,掌握在Django框架下的兩種開發方式,一是Template模式開發,二是REST模式開發。重點學習Python編程語法,學習Django框架原理及使用方法。
- 安裝Python3.6語言環境
- 創建Python項目的env環境
- VSCode中配套的插件安裝,以及書寫Python代碼的過程
- 了解和掌握Django下兩種不同模式的開發過程
相關軟件下載
- 安裝Python https://www.python.org/downloads/windows/
- 安裝VSCode https://code.visualstudio.com/Download
- Navicat for MySQL 數據庫管理軟件,在測試環境中安裝MySQL數據庫后使用該工具遠程管理數據庫。
Python語言環境安裝配置
下載Python3.6安裝包 https://www.python.org/downloads/
安裝到D:\Python36 目錄下,安裝時注意不選擇將路徑自動加入到PATH環境中,這樣可以讓多個Python程序環境并存。
打開命令行,設置Python程序搜索路徑
set PATH=d:\python36;d:\python36\scripts;
若調用VScode集成終端操作時,出現錯誤提示:
【d:\python36\scripts : 無法將“d:\python36\scripts”項識別為 cmdlet、函數、腳本文件或可運行程序的名稱。請檢查名稱的拼寫,如果包括路徑,請確保路徑正確,然后再試一次?!?br>
請點擊“文件”->“首選項”->“設置”,在右側輸入【"terminal.integrated.shell.windows": "C:\WINDOWS\System32\cmd.exe"】
將默認終端修改為“CMD”,再調用VScode中的CMD終端進行操作。
或者 命令行選擇方式
按 Ctrl+P ,輸入命令 >select default shell 后會顯示多個Shell選項
選擇 Command Prompt項即可。
安裝虛擬python環境軟件:pip install virtualenv
創建代碼主目錄srchome并進入,創建Python項目虛擬環境,假設項目名稱t3。 virtualenv t3-env
建立t3項目文件夾,項目內容在該文件夾中,通過VSCode+Git進行管理。
啟動創建的Python3虛擬環境t3-env
t3-env\scripts\activate
可以看見如下的提示行:
( t3-env ) D:\srchome>
- 制作方便啟動的批處理文件t3.env.bat,文件中內容如下:
d:\srchome\t3-env\Scripts\activate
- 在VSCode中使用命令行。
ctrl+· / exit # 打開和退出 終端命令行
pip list # 顯示Python環境中的安裝包
VSCode環境安裝及配置
- 在VSCode里安裝python插件
- ctrl + shift + p 輸入 ext install 選擇“Extensions:install extension” 回車
- 再輸入 python
- 等待安裝成功
- 在vs code中配置運行python程序的命令
4.1) ctrl + shift + p 搜索Configure Task
4.2) 創建tasks.json
修改 Command “tsc” 為 “python”
修改 showOutput “silent” 為 “always”
修改 Arguments [“Helloworld.ts”] 為 [“${file}”]
刪除 最后的一行屬性 problemMatcher
保存更改
4.3) 使用 ctrl + shift + B 執行py程序文件
- 配置VSCode應用Python的VIRTUALENV環境
選擇某個.py文件,點擊右下角Python,選擇配置"Python"語言基礎設置...
在工作區設置中添加以下項:
"python.pythonPath": "D:\srchome\t3-env\Scripts\python.exe"
或者在打開項目文件夾時,點擊“文件”->“首選項”->“設置”,在工作區設置中添加以下項::
"python.pythonPath": "D:\srchome\t3-env\Scripts\python.exe"
- VSCode終端進入后端項目環境(t3-env)
D:\srchome> t3.env
- VSCode里安裝語法檢查插件
安裝flake8 官方語法檢查插件(推薦),在項目的Python env中使用pip install flake8安裝。
安裝pylint 語言規范插件,控制代碼標準和規范,和flake8選用一個,在項目的Python env中使用pip install pylint,網友評價比較說這個插件檢查太嚴格。
Ctrl+P >select linter, 切換語言檢查插件。
在vscode中使用pylint-django插件解決pylint的一些不必要的錯誤提示。如果想繼續使用pylint,以下是解決方案:http://www.cnblogs.com/chaojihexiang/p/6417835.html
vscode 編寫python如何禁止 flake8 提示 line too long
使用vscode編寫python還是挺舒服的,但是如果給vscode安裝了語法校驗插件,例如flake8,會常常提示一些非??量痰恼Z法問題,其中最讓人不能忍受的就是line to long. https://www.cnblogs.com/tangxin-blog/p/6065017.html
- 用VSCode寫python的正確姿勢。flake8代碼檢查 + yapf自動格式化代碼 http://www.lxweimin.com/p/5ee8ae8fcbd5
Django項目框架
安裝django。
pip install django創建一個Django2項目
cd \srchome
django-admin startproject t3
cd t3 #進入項目目錄
django-admin startapp hello
- 運行一個Django項目服務
python manage.py runserver 0.0.0.0:8001
使用 ctrl+c 關閉服務
如果直接 python manage.py runserver
則系統自動監聽127.0.0.1的8000端口,訪問的鏈接地址為http://127.0.0.1:8000
Django開發實例
- Django RESTful開發,前后端開發主要方式 http://blog.csdn.net/svalbardksy/article/details/50548073
通過這個實例,了解Django RESTful方式的開發流程。djangorestframework的官方文檔:http://www.django-rest-framework.org/。
- Django 博客應用開發實例 http://blog.csdn.net/marksinoberg/article/details/51591005
通過Blog實例,了解Django模板渲染方式的開發流程。主要是models(模型)->更新數據表結構->views(視圖,建立tempaltes)->admin(管理視圖)->urls(添加訪問路徑)。
需要注意的是,在項目的settings設置中可以設置模板的路徑,比如:'DIRS': [os.path.join(BASE_DIR, 'templates')],表示在項目的路徑下的templates目錄存放模板。
VSCode可選插件
- Guides,縮進線插件,讓代碼看起來更清晰
- vscode-todo,使VSCode支持TODO的插件
- vscode-icons 可以使VSCode左側的資源管理器根據文件類型顯示圖標
- upload vscode插件,upload file to server with sftp
- Path Intellisense 自動路勁補全,默認不帶這個功能的,趕緊裝
- fileheader 頂部注釋模板,可定義作者、時間等信息,并會自動更新最后修改時間
參考學習
- Django
官方網站:https://www.djangoproject.com/
django2.0中文文檔 http://djangobook.py3k.cn/2.0/
Python中國社區,原django中國社區 http://www.django-china.cn
Django apps, projects and resources. https://github.com/rosarior/awesome-django
翻譯小組中文文檔 http://python.usyiyi.cn/
知乎 zhihu.com
segmentfault.com
Django視頻教程 https://www.cnblogs.com/wangcp-2014/p/5590425.html
django入門與實踐 https://www.imooc.com/learn/790