带你读《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编码自动创建。

相关文章
|
4天前
|
JavaScript 搜索推荐 Android开发
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
23 8
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
|
1天前
|
开发者 Python
Python入门:8.Python中的函数
### 引言 在编写程序时,函数是一种强大的工具。它们可以将代码逻辑模块化,减少重复代码的编写,并提高程序的可读性和可维护性。无论是初学者还是资深开发者,深入理解函数的使用和设计都是编写高质量代码的基础。本文将从基础概念开始,逐步讲解 Python 中的函数及其高级特性。
Python入门:8.Python中的函数
|
1天前
|
存储 索引 Python
Python入门:6.深入解析Python中的序列
在 Python 中,**序列**是一种有序的数据结构,广泛应用于数据存储、操作和处理。序列的一个显著特点是支持通过**索引**访问数据。常见的序列类型包括字符串(`str`)、列表(`list`)和元组(`tuple`)。这些序列各有特点,既可以存储简单的字符,也可以存储复杂的对象。 为了帮助初学者掌握 Python 中的序列操作,本文将围绕**字符串**、**列表**和**元组**这三种序列类型,详细介绍其定义、常用方法和具体示例。
Python入门:6.深入解析Python中的序列
|
1天前
|
程序员 UED Python
Python入门:3.Python的输入和输出格式化
在 Python 编程中,输入与输出是程序与用户交互的核心部分。而输出格式化更是对程序表达能力的极大增强,可以让结果以清晰、美观且易读的方式呈现给用户。本文将深入探讨 Python 的输入与输出操作,特别是如何使用格式化方法来提升代码质量和可读性。
Python入门:3.Python的输入和输出格式化
|
1天前
|
机器学习/深度学习 人工智能 算法框架/工具
Python入门:1.Python介绍
Python是一种功能强大、易于学习和运行的解释型高级语言。由**Guido van Rossum**于1991年创建,Python以其简洁、易读和十分工程化的设计而带来了庞大的用户群体和丰富的应用场景。这个语言在全球范围内都被认为是**创新和效率的重要工具**。
Python入门:1.Python介绍
|
1天前
|
缓存 算法 数据处理
Python入门:9.递归函数和高阶函数
在 Python 编程中,函数是核心组成部分之一。递归函数和高阶函数是 Python 中两个非常重要的特性。递归函数帮助我们以更直观的方式处理重复性问题,而高阶函数通过函数作为参数或返回值,为代码增添了极大的灵活性和优雅性。无论是实现复杂的算法还是处理数据流,这些工具都在开发者的工具箱中扮演着重要角色。本文将从概念入手,逐步带你掌握递归函数、匿名函数(lambda)以及高阶函数的核心要领和应用技巧。
Python入门:9.递归函数和高阶函数
|
1天前
|
存储 SQL 索引
Python入门:7.Pythond的内置容器
Python 提供了强大的内置容器(container)类型,用于存储和操作数据。容器是 Python 数据结构的核心部分,理解它们对于写出高效、可读的代码至关重要。在这篇博客中,我们将详细介绍 Python 的五种主要内置容器:字符串(str)、列表(list)、元组(tuple)、字典(dict)和集合(set)。
Python入门:7.Pythond的内置容器
|
1天前
|
存储 Linux iOS开发
Python入门:2.注释与变量的全面解析
在学习Python编程的过程中,注释和变量是必须掌握的两个基础概念。注释帮助我们理解代码的意图,而变量则是用于存储和操作数据的核心工具。熟练掌握这两者,不仅能提高代码的可读性和维护性,还能为后续学习复杂编程概念打下坚实的基础。
Python入门:2.注释与变量的全面解析
|
1天前
|
数据采集 Web App开发 存储
打造高效的Web Scraper:Python与Selenium的完美结合
本文介绍如何使用Python结合Selenium,通过代理IP、设置Cookie和User-Agent抓取BOSS直聘的招聘信息,包括公司名称、岗位、要求和薪资。这些数据可用于行业趋势、人才需求、企业动态及区域经济分析,为求职者、企业和分析师提供宝贵信息。文中详细说明了环境准备、代理配置、登录操作及数据抓取步骤,并提醒注意反爬虫机制和验证码处理等问题。
打造高效的Web Scraper:Python与Selenium的完美结合
|
4天前
|
人工智能 测试技术 数据处理
通义灵码 2.0 体验报告:Deepseek 加持下的 Python 开发之旅
通义灵码 2.0 体验报告:Deepseek 加持下的 Python 开发之旅
57 11

热门文章

最新文章

推荐镜像

更多