带你读《Python Flask Web开发入门与项目实战》之一:开发环境部署

简介: 本书从Flask框架的基础知识讲起,逐步深入到使用Flask进行Web应用开发实战。内容通俗易懂,案例丰富,实用性强,特别适合Python Web开发的入门读者和进阶读者学习,也适合PHP程序员和Java程序员等其他Web开发爱好者阅读。另外,本书可以作为相关培训机构的教材用书。

点击查看第二章
点击查看第三章
Python Flask Web开发入门与项目实战

image.png


  
钱游 编著

第1章 开发环境部署

  工欲善其事,必先利其器。要做基于Python的Web开发,必须部署好开发环境。笔者选择的版本为Python 3.7,集成开发环境(IDE)版本为PyCharm 2018.2.1,本书中的所有项目都基于此环境开发。
  本章主要涉及的知识点有:

  • Python的安装及配置;
  • 虚拟环境的使用与配置;
  • Pycharm的安装及使用。

1.1 Python的安装及配置

  Python几乎可以在任何平台上运行,如在我们所熟悉的Windows、Linux等多种主流操作系统上运行。安装Python的时候,我们可以选择从源码安装(一般先要安装编译源码所需要的各种依赖包,再下载源码解压安装),也可以用已经编译、打包好的安装包进行安装。这里笔者选择的是编译好的安装包下载安装。

1.1.1 Python的安装

  下面以在Windows 7的64位操作系统中安装Python为例,简要说明一下Python的安装方法。
  Python安装包可以直接从官网下载,下载地址为https://www.python.org/ ,先选择Downloads下的Windows,再选择Python 3.7.0的版本下载。这里主要分成3个版本:embeddable zip file-解压版(解压后配置环境变量就可以直接使用)、executable installer-安装版(需要安装并配置环境变量才能使用)、web-based installer-在线安装版(需要连接网络安装),3个版本如图1.1所示。其中,x86代表32位,x86-64代表64位,根据计算机系统,选择相应的安装包即可。

image.png

image.png

  这里下载的是安装版,安装路径可以选择默认(Install Now),也可以选择自定义(Customize installation)。下面介绍一下这两种方式的安装方法。

image.png

  

1.选择默认安装


  (1)双击安装包文件准备安装,如图1.2所示。

image.png

  (2)选择Install Now选项(默认安装方式),一直单击Next按钮,直至完成安装,如图1.3所示。

image.png

  2.选择自定义安装
  (1)安装界面选择Customize installation选项(自定义安装),选中Add Python 3.7 to PATH复选框添加路径(如果选这一步骤,后面的Python环境变量配置可以省略),如图1.4所示。

image.png

  (2)不作任何更改,单击Next按钮,进入下一步安装,如图1.5所示。

image.png

  (3)选择一个自己喜欢的安装位置,单击Install按钮开始安装,如图1.6所示。这里的安装路径为C:Python37。

image.png

  (4)等待进度条加载完毕,如图1.7所示。
  (5)安装完毕后,单击Close按钮,完成安装,如图1.8所示。

image.png

  至此,Python 3.7.0安装完成,下面开始配置环境变量。为什么要设置环境变量?简单地说,计算机在执行某个程序或命令时,是在环境变量中找对应的程序或命令的起始位置。如果不正确设置环境变量,就不能正确使用相应的程序或命令。设置环境变量的详细步骤如下:
  (1)右击计算机桌面上的“计算机”图标,在弹出的快捷菜单中选择“属性”命令,如图1.9所示。

image.png

  (2)在弹出的对话框中单击“高级系统设置”,如图1.10所示。

image.png

  (3)在弹出的“环境变量”|“高级”选项卡中,选择系统变量中的Path,然后单击“编辑”按钮,如图1.11所示。
  (4)请注意配置环境变量,将“;C:Python37;C:Python37Scripts;”(注意,复制双引号中间的内容,不要复制双引号)复制到环境变量中系统变量的Path变量最后面的位置上去,如图1.12所示。

image.png

1.1.2 测试Python是否安装成功

  接下来测试一下Python是否安装成功。按Win+R键,调出运行窗口,在运行窗口中输入cmd并回车,然后在cmd下输入python -V,可以看到Python的版本号为Python 3.7.0,就可以知道Python安装成功了,如图1.13所示。

image.png

1.2 虚拟环境的配置

  在实际开发环境中,应用A可能使用的版本为Python 2.x版本,应用B可能使用的版本是Python 3.x的版本,为了使Python多版本能同时共存,互相不影响,必须有一种工具能将多个应用隔离开。virtualenv就是一个创建隔绝Python环境的工具,它使每个应用各自拥有一套“独立”的Python运行环境成为可能。
  要使用virtualenv,必须首先完成安装。安装virtualenv可以使用下面的命令:pip install virtualenv或 pip3 install virtualenv来完成安装,安装成功后,如图1.14所示。

image.png

  笔者计算机上安装了Python 2.7和Python 3.7两个版本,所以这里使用了以下命令:

py -3 -m pip install virtualenv

  接下来,为工程创建一个虚拟环境,具体步骤如下:
  (1)在cmd下进入工程存放的磁盘。比如,笔者的是F盘,那么在cmd下直接输入“f:”(输入的是双引号中的内容),然后回车,就进入F盘根目录下了,如图1.15所示。

image.png

  (2)在F盘根目录下新建一文件夹,输入命令mkdir flask-venv,回车,然后输入命令cd flask-nenv再回车,如图1.16所示。

image.png

image.png

  (3)接着输入命令virtualenv venv,然后回车。virtualenv venv将会在当前的目录下创建一个目录,表示虚拟环境目录名为venv,包含了Python可执行文件,以及pip库的一份备份,如图1.17所示。这样就能安装其他包了。虚拟环境的名称也可以取为其他名称,若省略名称将会把文件均放在当前目录下。

image.png

  如果你的计算机中安装有多个版本的Python,可以选择一个Python解释器,在指定之前,请将flask-venv目录下的venv整个文件夹全部删除掉,再使用如下命令:

virtualenv -p C:\Python37\python.exe venv。

image.png

  (4)要开始使用虚拟环境,其需要被激活,在cmd中输入cd F:flask-venvvenvScripts,然后回车,再输入dir后回车,如图1.18所示。

image.png

  (5)接着输入命令activate,回车以后便可以激活此虚拟环境了。激活的虚拟环境如图1.19所示,激活以后当前命令行多了(venv)标识。

image.png

  如果要停用虚拟环境,可以使用下面的命令:

deactivate

  如果要删除此虚拟环境,可以使用下面的命令:

rmvirtualenv flask-venv

  如果要查看当前虚拟环境下已经安装了的第三方库,可以使用下面的命令:

pip list

  
  如图1.20所示为目前已经安装好的第三方库。

image.png

image.png

1.3 PyCharm的安装及使用

  PyCharm是一款Python的IDE开发软件,它是由Jetbrains出品的产品,带有一整套可以帮助用户在使用Python语言开发时提高开发效率的工具,是使用Python语言开发的首选工具。

1.3.1 PyCharm的下载及安装

  PyCharm主要有收费版(专业版)和免费版(社区版),读者可以根据自己的需要选择对应的版本进行下载并安装。可以搜索PyCharm官网,还可以直接输入网址http://www.jetbrains.com/pycharm/download/#section=windows 下载PyCharm安装包,如图1.21所示,根据自己电脑的操作系统进行选择下载。

image.png

  接下来简单介绍一下PyCharm软件安装的步骤。
  (1)双击软件图标,开始安装,如图1.22所示。

image.png

  (2)选择安装路径,可以选择默认路径,如图1.23所示。

image.png

  (3)如是64位系统,可以选择64-bit launcher复选框,如是32位系统,则选择32-bit launcher复选框,然后单击Next按钮,如图1.24所示。

image.png

  (4)单击Install按钮开始安装,如图1.25所示。

image.png

  (5)完成安装后,如图1.26所示。

image.png

1.3.2 在PyCharm中新建工程

  (1)PyCharm新建工程很简单,选择File | New ProjectFile | New Project命令,弹出如图1.27所示对话窗口。

image.png

  (2)单击Create按钮,弹出Open Project对话框,如图1.28所示。选择默认选项,单击OK按钮。

image.png

  (3)新工程创建成功,如图1.29所示。

image.png

1.3.3 在PyCharm中设置UTF-8编码自动创建

  在网站开发中,一般要设置网页编码方案,国内开发人员有用UTF-8编码格式的,还有使用GB2312编码格式的。UTF-8是支持国际化的编码方案,如果采用了UTF-8编码,国外用户浏览UTF-8编码的任何网页,无论是中文、日文、韩文或阿拉伯文,都可以正常显示。反之,如果不采用GB2312编码,国外用户浏览你的中文站点时,显示的将会是乱码。因此我们要求每个网页中必须指定编码方案。在PyCharm中,每一个.py文件中都必须编写相同的一行代码“#encoding:utf-8”。有没有方法使系统可以自动创建这一行代码?答案显然是肯定的。

image.png

  设置方法如下:
  (1)执行File | Settings命令,如图1.30所示。

image.png

  (2)接步骤(1)继续执行Editor | File and Code Templates命令,在弹出的窗口中进行设置,如图1.31所示。

image.png

  (3)找到Python Script并点开,在如图1.32所示区域填写#encoding:utf-8。

image.png

  (4)写好以后,单击OK按钮保存设置。然后重新启动PyCharm,再在工程中新建立一个xxx.py文件,就可以看到自动创建的#encoding:utf-8代码。

1.3.4 在PyCharm中使用已经设置好的虚拟环境

  我们在PyCharm中创建好虚拟环境后,在此虚拟环境中安装需要的插件和第三方库,就可以进行项目开发了。如果此时新建立了一个测试项目,那么是新建新的虚拟环境还是使用配置好的虚拟环境呢?如果你的新项目跟以前的项目使用的是同一个版本的Python,那么就没有必要建立新的虚拟环境了。因为新建新的虚拟环境,一是浪费开发人员的精力和时间,二是会占用额外的磁盘空间。下面介绍如何在PyCharm中使用已经设置好的虚拟环境。
  假定我们在J盘的J:flask-venvvenv目录中建有并配置好了一个虚拟环境。现在要启用这个设置好的虚拟环境,在PyCharm中新建一名称为test的工程,找到Project Interpreter设置面板,步骤如下:
  (1)执行File | Settings | Project:test | Project Interpreter命令,如图1.33所示。

image.png

image.png

  (2)单击面板右侧如图1.34所示的按钮。

image.png

  (3)通过鼠标左键设置图标按钮后,设置图标转变成Add图标,如图1.35所示。

image.png

  (4)单击Add图标,弹出如图1.36所示窗口。选中Existing environment单选按钮,单击浏览按钮。

image.png

  (5)找到虚拟环境所在路径J:flask-venvvenv,如图1.37所示。

image.png

  (6)在图1.37中双击venv文件夹,找到J:flask-venvvenvScriptspython.exe路径中的python.exe文件,单击OK图标,如图1.38所示。

image.png

  (7)如出现如图1.39所示窗口,表示修改成功。

image.png

1.4 温 故 知 新

  1. 学完本章内容后,读者需要回答:
  (1)什么是环境变量?
  (2)什么是虚拟环境?

  2. 在下一章中将会学习:
  (1)Web的基本知识。
  (2)URL的基本概念和URL反转。
  (3)页面重定向与页面跳转。
  (4)在URL中传递参数。

1.5 习 题

  通过下面的习题来检验本章的学习情况,习题答案请参考本书配套资源。
  【本章习题答案见配套资源源代码C1习题】
  1.配置好环境以后,用notepad++等软件新建一个Python文件,打印输出hello world!。

  2.在PyCharm中设置UTF-8编码自动创建。

相关文章
|
19小时前
|
XML 前端开发 JavaScript
CSR(客户端渲染)和AJAX在Web开发中各自扮演不同的角色
【5月更文挑战第8天】CSR(客户端渲染)与AJAX在Web开发中各司其职。CSR提供初始HTML框架,通过JavaScript在浏览器端获取并渲染数据,提升交互性和响应速度。AJAX则实现页面局部更新,如实时搜索,不刷新页面即可获取数据。CSR可能因DOM操作多而引发性能问题,但可优化解决;AJAX适合频繁交互场景,提高响应性。两者在不同需求下各有优势,需按项目选择适用技术。
9 4
|
19小时前
|
前端开发 搜索推荐 安全
AJAX和CSR(客户端渲染)是Web开发中常用的两种技术
【5月更文挑战第8天】AJAX提升用户体验,减轻服务器压力,但对搜索引擎不友好且增加开发复杂度,易引发安全问题。CSR提供快速响应和交互性,改善用户体验,但首屏加载慢,搜索引擎支持不足,同样面临安全挑战。两者各有适用场景,需按项目需求选择。
7 0
|
1天前
|
应用服务中间件 nginx
如何在树莓派部署Nginx并实现无公网ip远程访问内网制作的web网站
如何在树莓派部署Nginx并实现无公网ip远程访问内网制作的web网站
7 0
|
1天前
|
前端开发 JavaScript 开发者
新一代前端框架:革命性的Web开发利器
传统的前端框架在满足日益复杂的Web开发需求上逐渐显露出局限性,而新一代前端框架的出现,以其革命性的设计和功能,重新定义了Web开发的标准。本文将介绍这些新一代前端框架的特点和优势,并探讨它们在实际项目中的应用。
|
1天前
|
数据采集 Python
使用Python实现简单的Web爬虫
本文将介绍如何使用Python编写一个简单的Web爬虫,用于抓取网页上的信息。通过分析目标网页的结构,利用Python中的requests和Beautiful Soup库,我们可以轻松地提取所需的数据,并将其保存到本地或进行进一步的分析和处理。无论是爬取新闻、股票数据,还是抓取图片等,本文都将为您提供一个简单而有效的解决方案。
|
2天前
|
开发框架 JavaScript 安全
WIndows Server 2016 部署 Web服务(简单篇)
WIndows Server 2016 部署 Web服务(简单篇)
|
2天前
|
机器学习/深度学习 数据采集 数据可视化
利用Python进行历史数据预测:从入门到实践的两个案例分析
利用Python进行历史数据预测:从入门到实践的两个案例分析
14 1
|
2天前
|
持续交付 Python
使用Python实现自动化Web内容巡检
使用Python实现自动化Web内容巡检
10 1
|
2天前
|
数据采集 存储 XML
如何利用Python构建高效的Web爬虫
本文将介绍如何使用Python语言以及相关的库和工具,构建一个高效的Web爬虫。通过深入讨论爬虫的基本原理、常用的爬虫框架以及优化技巧,读者将能够了解如何编写可靠、高效的爬虫程序,实现数据的快速获取和处理。
|
3天前
|
前端开发 JavaScript Python
使用Python读取本地行情csv文件,做出web网页画出K线图实现案例
【5月更文挑战第4天】使用Python绘制K线图的步骤:1) 安装pandas, matplotlib和Flask;2) 用pandas读取CSV文件并处理数据;3) 创建Flask应用,渲染包含K线图数据的HTML;4) 编写HTML,使用ECharts库绘制K线图。
22 0