WEB开发系列3:一步步打造强大的Python后端开发环境

前言

上一节中,我们强烈推荐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语言环境安装配置

  • 下载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、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。】
请点击“文件”->“首选项”->“设置”,在右侧输入【"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插件
  1. ctrl + shift + p 输入 ext install 选择“Extensions:install extension” 回车
  2. 再输入 python
  3. 等待安装成功
  4. 在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编写python还是挺舒服的,但是如果给vscode安装了语法校验插件,例如flake8,会常常提示一些非常苛刻的语法问题,其中最让人不能忍受的就是line to long. https://www.cnblogs.com/tangxin-blog/p/6065017.html

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方式的开发流程。djangorestframework的官方文档:http://www.django-rest-framework.org/

通过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

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容