首页 > 其他分享 >2211-11Flask入门教程

2211-11Flask入门教程

时间:2022-11-11 02:00:10浏览次数:66  
标签:Git 2211 git 命令 仓库 入门教程 Python 虚拟环境 11Flask

本篇记录来自Flask入门教程

准备工作

在通过这本书学习 Flask 开发前,我假设你已经了解了 Python 和 HTML 的基础知识。如果还没有,那么可以先从下面这些在线资源入手:

《使用 HTML、CSS 和 Javascript 构建简单的网站》 - Microsoft Learn
《Web 入门教程》 - MDN
《使用 Python 迈出第一步》 - Microsoft Learn
《Python 教程》 - Python.org
这个教程对你的操作系统没有要求:你可以使用 Windows,也可以使用 macOS 或 Linux。不过你的 Python 版本需要是 3.6 及以上版本。

安装编辑器和浏览器

对于编辑器来说,每个人都有不同的偏好,你可以自由选择。可以选择功能丰富的IDE(集成开发环境),比如 PyCharm ;也可以选择相对轻量的编辑器,比如 VS CodeSublime Text 。浏览器建议使用 FirefoxChrome

使用命令行

在本书中,你需要使用命令行窗口来执行许多操作。你可以使用 Windows 下的 CMD.exe,或是 macOS 和 Linux 下的终端(Terminal)。下面我们执行一个最简单的 whoami 命令(即 Who Am I?):

$ whoami
greyli

这个命令会打印出当前计算机用户的名称。其他常用的命令还有 cd 命令,用来切换目录(change directory);mkdir 命令,用来创建目录(make directory)。在不同的操作系统上,执行某个操作的命令可能会有所不同,在必要的地方,书里会进行提示。

我们先来为我们的程序创建一个文件夹:

$ mkdir watchlist
$ cd watchlist

除非特别说明,从现在开始,本书假设你的工作目录将是在项目的根目录,即 watchlist/ 目录。

为了确保你已经正确安装了 Python,可以执行下面的命令测试是否有报错:

$ python --version
Python 3.9.10

在 Linux 和 macOS 中,对应 Python 3 版本的命令将会是 python3(类似的,Python 3 对应的 pip 命令为 pip3):

$ python3 --version
Python 3.8.3

使用 Git
Git 是一个流行的版本控制工具,我们可以用它来记录程序源码和文件的变动情况,或是在开发时进行多人协作,你可以把它看做一个代码变动备份工具。

如果你还不熟悉 Git 也没关系,可以先按照书中的命令去做,有时间再去了解原理。现在要做的第一件事就是在你的电脑上安装 Git

附注 阅读短教程《Git 简明指南》 或访问 Microsoft Learn 上的引导式教程《Git 简介》 了解相关基础知识。

安装后可以在命令行先使用使用下面的命令查看版本,没有报错则表示已正确安装:

$ git --version
git version 2.17.1

为了让 Git 知道你是谁,以便在提交代码到版本仓库的时候进行记录,使用下面的命令设置你的信息:

$ git config --global user.name "zk-b-bull"  # 替换成你的名字
$ git config --global user.email "[email protected]"  # 替换成你的邮箱地址

现在为我们的项目文件夹创建一个 Git 仓库,这会在我们的项目根目录创建一个 .git 文件夹:

$ git init
Initialized empty Git repository in ~/watchlist/.git/

Git 默认会追踪项目文件夹(或者说代码仓库)里所有文件的变化,但是有些无关紧要的文件不需要记录变化,我们在项目根目录创建一个 .gitignore 文件,在文件中写入忽略文件的规则。因为文件内容比较简单,我们直接在命令行使用 nano 来创建(我在此处使用git bash操作成功):

$ nano .gitignore

在 nano 编辑界面写入常见的可忽略文件规则:

*.pyc
*~
__pycache__
.DS_Store

使用 Control + O 和 Enter 键保存,然后按下 Control + X 键退出。在后续章节,对于简单的文件,都会使用 nano 创建,这部分操作你也可以使用编辑器的图形界面来完成。

将程序托管到 GitHub(可选)

这一步是可选的。将程序托管到 GitHub、GitLab 或是 BitBucket 等平台上,可以更方便地备份、协作和部署。这些托管平台作为 Git 服务器,你可以为本地仓库创建远程仓库。

首先要注册一个 GitHub 账户,点击访问注册页面 ,根据指示完成注册流程。登录备用。

附注 你可以访问 Microsoft Learn 上的引导式教程《GitHub 简介》 了解相关基础知识。

设置 SSH 密钥

一般情况下,当推送本地改动到远程仓库时,需要输入用户名和密码。因为传输通常是通过 SSH 加密,所以可以通过设置 SSH 密钥来省去验证账号的步骤。

首先使用下面的命令检查是否已经创建了 SSH 密钥:

$ cat ~/.ssh/id_rsa.pub

如果显示“No such file or directory”,就使用下面的命令生成 SSH 密钥对,否则复制输出的值备用:

$ ssh-keygen

一路按下 Enter 采用默认值,最后会在用户根目录创建一个 .ssh 文件夹,其中包含两个文件,id_rsa 和 id_rsa.pub,前者是私钥,不能泄露出去,后者是公钥,用于认证身份,就是我们要保存到 GitHub 上的密钥值。再次使用前面提到的命令获得文件内容:

$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3Nza...省略 N 个字符...3aph book@greyli

选中并复制输出的内容,访问 GitHub 的 SSH 设置页面 (导航栏头像 - Settings - SSH and GPG keys),点击 New SSH key 按钮,将复制的内容粘贴到 Key 输入框里,再填一个标题,比如“My PC”,最后点击“Add SSH key”按钮保存。

创建远程仓库

访问新建仓库页面 (导航栏“+” - New repository),在“Repository name”处填写仓库名称,这里填“watchlist”即可,接着选择仓库类型(公开或私有)等选项,最后点击“Create repository”按钮创建仓库。

因为我们已经提前创建了本地仓库,所以需要指定本地仓库的远程仓库地址:

$ git remote add origin [email protected]:greyli/watchlist.git  # 注意更换地址中的用户名

这会为本地仓库关联一个名为“origin”的远程仓库,注意将仓库地址中的“greyli”换成你的 GitHub 用户名。

如果还没有创建本地仓库,则可以直接将远程仓库克隆到本地(这会在当前目录创建一个名为 watchlist 的文件夹):

$ git clone [email protected]:zk-b-bull/watchlist.git  # 注意更换地址中的用户名

创建虚拟环境

虚拟环境是独立于 Python 全局环境的 Python 解释器环境,使用它的好处如下:

  • 保持全局环境的干净
    *为同一个库在不同环境下指定不同的版本
    *方便记录和管理某个项目相关的依赖
    我们将使用 Python 3 内置的 venv 模块创建虚拟环境,使用下面的命令即可为当前项目创建一个虚拟环境:

    $ python -m venv env # Windows
    或:

    $ python3 -m venv env # Linux 和 macOS

提示 上述命令的最后一个参数是虚拟环境名称,你可以自由定义,比如 venv、env、.venv,或是“项目名-venv”,这里使用了 env。

这会在当前目录创建一个包含 Python 解释器环境的虚拟环境文件夹,名称为 env。

激活虚拟环境

创建虚拟环境后,我们可以使用下面的命令来激活虚拟环境(通过执行/“source”环境内的激活脚本实现):

$ env\Scripts\activate  # Windows

提示 如果你在 Windows 中使用 Git Bash,则需要使用. env/Scripts/activate 命令

或:

$ . env/bin/activate  # Linux 或 macOS

这时命令提示符前会显示虚拟环境的名称,表示已经激活成功:

(env) $

在激活虚拟环境后,无论操作系统和 Python 版本,都可以统一使用 python 和 pip 命令来调用当前虚拟环境内的 Python 和 pip 程序/二进制文件。此时执行 python 或 pip 命令指向的程序和激活脚本在同一个目录下,在 Windows 下所在目录为 env\Scripts\,Linux 和 macOS 下所在目录为 env/bin/。
最后,执行 deactivate 即可退出虚拟环境:

(env) $ deactivate
$

注意 除了 Git 相关命令外,除非特别说明,本书后续的所有命令均需要在激活虚拟环境后执行。
提示 建议为 pip 更新 PyPI 源,改为使用国内的 PyPI 镜像源以提高下载速度,具体见这篇文章

安装 Flask

激活虚拟环境后,使用下面的命令来安装 Flask:

(env) $ pip install flask
Successfully installed Jinja2-3.1.2 MarkupSafe-2.1.1 Werkzeug-2.1.2 click-8.1.3 flask-2.1.3 importlib-metadata-4.12.0 itsdangerous-2.1.2 zipp-3.8.1

这会把 Flask 以及相关的一些依赖包安装到对应的虚拟环境。本书写作时的 Flask 最新版本为 2.1.3,你执行这条命令时也许会安装更新的版本。如果你想指定安装 2.1.3 版本,可以使用下面的命令:

(env) $ pip install flask==2.1.3

提示 如果你没有使用虚拟环境,记得将 Flask 更新到最新版本(pip install -U flask)。

本章小结

当你进行到这里,就意味这我们已经做好学习和开发 Flask 程序的全部准备了。使用 git status 命令可以查看当前仓库的文件变动状态:

$ git status

下面让我们将文件改动提交进 Git 仓库,并推送到在 GitHub 上创建的远程仓库:

$ git add .
$ git commit -m "I'm ready!"
$ git push -u origin master # 如果你没有把仓库托管到 GitHub,则跳过这条命令,后面章节亦同

这里最后一行命令添加了 -u 参数,会将推送的目标仓库和分支设为默认值,后续的推送直接使用 git push 命令即可。在 GitHub 上,你可以通过 https://github.com/你的用户名/watchlist 查看你的仓库内容。

提示 你可以在 GitHub 上查看本书示例程序的对应 commit:1b6fe4a

进阶提示

如果你打算开源你的程序,在项目根目录中添加一个 README.md(自述文件)和 LICENSE(授权声明)是很有必要的。详情可以访问 Open Source Guides 了解。

标签:Git,2211,git,命令,仓库,入门教程,Python,虚拟环境,11Flask
From: https://www.cnblogs.com/zk-python/p/16879379.html

相关文章

  • GL-Polite Behavior 20221101
    PolitebehaviorTime2022.11.01Tuesday23:00-23:45Whenitcomestomannersandetiquette,everycountryseemstohaveitsownsetofrules.Discusswhatis......
  • 20221109_集成测试考试
    考试时直接像这样画图可以,用文字描述也可以只要求掌握自顶向下的广度和深度就行要掌握的三个点:1.集成测试和单元测试的区别2.集成测试的策略(四个)大爆炸集成自顶向下......
  • HummerRisk 快速入门教程
    1、一键部署1.部署服务器要求操作系统要求:任何支持Docker的Linuxx64CPU内存要求:最低要求4C8G,推荐8C16G部署目录空间(默认/opt目录)要求:50G网络要求:可访问互联网(如遇内......
  • 数据库快速入门教程--视频
    ​​数据库快速入门教程--视频​​下载地址:​​http://v.51work6.com/courseInfoRedirect.do?action=courseInfo&courseId=240579​​本课程是这个课程体系的核心之一,为软件......
  • 组帧封包-20221108
    42byteaddress=Convert.ToByte(tbxAddress.Text.Trim(),16);//地址码43bytecmd=Convert.ToByte(tbxCmd.Text.Trim()......
  • 【视频教程】Dart编程语言基础入门教程 - 09日期时间
    Dart语言是谷歌团队开发的一款支持多平台(web、IOS、安卓)的全栈性语言,他也可以在前端,后端,服务器端上进行各种开发应用,是个不错的语言,目前也有一些公司在开始慢慢尝试着用它来......
  • 20221107 24. Linux 核心编译与管理
    24.1编译前的任务:认识核心与取得核心源代码“核心(kernel)”是整个操作系统的最底层,他负责了整个硬件的驱动,以及提供各种系统所需的核心功能,包括防火墙机制、是否支持LVM......
  • 20221107 23. X Window 设置介绍
    在Linux上头的图形接口我们称之为XWindowSystem,简称为X或X11啰!为何称之为系统呢?这是因为X窗口系统又分为Xserver与Xclient,既然是Server/Client(主从架......
  • 20221108
    网站运维runoob好像啥都没讲一个网站开发人员必须掌握的知识是什么?HTML和CSS客户端脚本-JavaScriptandtheDOM服务端脚本-ASP,PHPXML和SQLhttps://www......
  • zzszoi20221107
    20221107zzszoi模拟赛记录作者zzafanti(FreshOrange)请勿转载这次比赛题目较简单但是思维难度高一点开题顺序\(A-C-B-D\)或\(C-A-D-B\)等等都可大概就是\(A,C\)......