自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Sweeneys的博客

功夫在字外

原创 leetcode: 13.Roman to Integer(罗马数字转整数)

问题分析 1、罗马数字特点 一般情况下大的字母排在前面,小的字母排在后面,此时进行的是加法(如: VI=5+1=6);特殊情况:小的字母排在前面,大的字母排在后面,此时进行的是减法(如:IV=5-1=4)。 一般情况 + 特殊情况(映射关系》数据类型dict): roman = { ...

2020-05-06 19:09:12 40 0

原创 链表1-单链表(Python实现)

一、链表定义 1、线性表需求 线性表的基本需求有两点: 能够找到线性表的首元素(head)。 从线性表的任何一个元素开始,能够找到它之后的下一个元素(next)。 2、什么是链表(链接表) 基于链接技术实现的线性表称为链接表(简称 链表)。链接技术实现原理: 把表中的元素 分别 存储在 独...

2020-04-29 14:15:53 45 0

原创 python: 可迭代对象、迭代器、生成器

一、迭代 1、定义 迭代是指通过for循环遍历对象每一个元素的过程。 二、可迭代对象(iterable) 1、定义 可迭代对象是定义了 __iter__() 方法或 __getitem__() 方法的类对象。 2、__iter__() from collections import abc ...

2020-04-25 17:59:10 48 0

原创 leetcode:9.PalidromeNumber(回文数)

回文数 一.解题方法 1.转为字符串处理 可转化为字符串反转问题。字符串反转方法:str() + slice, 2.整数反转 示例回文数:121 (1)临界情况 所有负数都不可能是回文数。所有尾数为0的非零整数也不可能是回文数。 (2)将整数进行分解 将该数除以10,得到商(quotient), ...

2020-04-21 23:00:48 33 0

原创 Docker管理应用程序数据

说明 命令的操作关注点有以下几方面: 有哪些命令 命令的语法 执行命令后,命令做了什么 命令是否有返回结果,如果有,返回的是什么 存储概述 docker提供了两种方式来实现将文件持久存储在宿主机中:卷(volume)和绑定挂载(bind mount)。 卷(volumes) docke...

2020-04-07 17:37:48 36 0

原创 selenium用法详解

为什么使用selenium 因为有些网页是动态渲染的,如果使用传统的请求库进行爬虫,可能得不到所需要的内容,所以使用selenium库。 安装 1、selenium selenium的安装方式详见参考资料[2]。 pip install selenium 2、浏览器 可以安装谷歌,火狐,edge...

2020-03-18 14:20:55 46 0

原创 Jupyter Notebook折叠输出的内容

一、问题描述 当Jupyter Notebook的输出内容很多时,为了屏幕可以显示更多的代码行,我需要将输出的内容进行折叠。 二、解决方法 1、鼠标操作 (1)鼠标左键双击输出单元格的左侧灰色区域。 (2)展开:鼠标左键单机下方的灰色区域即可。如下图所示: 2、快捷键操作 (1)按Esc键 ...

2020-03-12 15:33:47 548 0

原创 启动Jupyter Notebook提示ImportError: DLL load failed: 找不到指定的模块。

一、环境说明 1.windows: 10(专业版) 2.Anaconda: 1.7.2 二、问题描述 在cmd中运行命令 jupyter notebook 启动jupyter的时候出现如下错误(jupyter是anaconda自带的,不是单独安装的): 三、问题分析 略。 四、解决方法 将ana...

2020-03-12 10:24:02 1606 2

原创 MongoDB文档操作

一、什么是文档 MongoDB将数据记录存储为BSON文档。BSON是JSON的二进制表现形式。所以文档其实就是一条数据记录,类似于mysql中的行(row)。(详见参考资料[1]) 二、插入文档 “插入文档”指将文档插入到集合中。 1、语法 (1)db.collection.insert() (...

2020-03-02 10:28:29 36 0

原创 MongoDB集合操作

一、创建集合 1、语法 db.createCollection(name,options) 参数说明: (1)name: 要创建的集合名称。 (2)options: 可选参数,如指定是否创建固定大小的集合。具体内容见参考资料[1]。 2、实例 创建一个名为log的集合: > use tes...

2020-02-19 20:06:19 93 0

原创 windows系统下Studio3T下载与安装

一、说明 1、windows: win10企业版。 2、Studio 3T: Studio 3T 2020.1.2 二、Studio 3T 下载与安装 1、下载 进入到Studio 3T 下载地址进行下载。选择合适的版本进行下载。 2、安装 (1)双击安装文件进行安装 (2)点击Next按钮进...

2020-02-13 11:59:44 391 0

原创 Docker多阶段构建镜像

一、环境说明 1.ubuntu: 18.04.3 LTS 2.docker: 19.03.5 二、多阶段构建(multi-stage builds) 1、原理 多阶段构建通过在Dockerfile中使用多个 FROM指令实现。每一条 FROM 指令都是一个构建阶段,多个 FROM指令就是多阶段构建...

2020-01-01 11:06:53 104 0

原创 Nginx常用命令

环境说明 1.linux: ubuntu 18.04.3 LTS 2.Nginx: 1.14.0(本文的操作都是基于apt命令安装的Nginx) 文件位置说明 Nginx使用源码编译安装和直接安装(如使用apt命令安装)时,各文件位置是不同的。 1、Nginx二进制文件 (1)源码编译安装:/us...

2019-12-27 22:06:23 28 0

原创 docker构建镜像

一般来说,我们所说的“构建镜像”并不是真正的从零构建一个全新的镜像,而是修改一个已有的基础镜像(如ubuntu)。 创建Docker Hub账号 (1) 如果要存储和分发我们构建的新镜像,那么可以将镜像发布到 Docker Hub 或者自己私有的Registry上面。所以需要先在 Docker H...

2019-12-20 09:26:28 49 0

原创 Ubuntu下编译安装Nginx

一、准备工作 1、Linux操作系统 (1)内核版本: $ uname -a Linux iZwz94kwqu5mk9oxpv2m2tZ 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64 x86_64 x86_6...

2019-12-18 22:16:45 43 0

原创 docker login登录错误

一、环境说明 1、ubuntu: 18.04.2 LTS 2、docker: 19.03.5, build 633a0ea838 二、问题描述 使用 docker login命令登录 Docker Hub时报错。 $ docker login Login with your Docker ID ...

2019-12-18 09:07:19 312 0

原创 docker容器操作

一、环境说明 1、docker: 19.03.5 创建容器 1、docker create docker create命令可以新建一个容器, 但是不启动容器。 2、示例 创建一个redis容器: $ docker create redis Unable to find image 're...

2019-12-17 16:24:07 32 0

原创 Docker镜像操作

一、环境说明 1.docker: 19.03.5 二、拉取镜像 1、docker pull 从 Docker Hub 拉取镜像的命令是 docker pull, 我们可用通过docker pull --help查看具体用法: 2、示例 $ docker pull ubuntu:18.04 18....

2019-12-16 10:48:34 37 0

原创 Linux系统下Docker的安装与卸载

环境说明 1.Ubuntu: 18.04.2 LTS (GNU/Linux 4.15.0-52-generic x86_64) 卸载旧版本 安装新的Docker之前,最好卸载掉旧版本的Docker。旧版本的Docker称为 docker,docker.io,或者docker-engine,可以使用...

2019-12-10 22:53:57 57 0

原创 windows安装Docker

环境说明 1.windows: win10(64位,企业版) 安装前须知 1.Docker for Windows 如果电脑满足以下系统要求: 1.win10 64位:专业版、企业版或者教育版(内部版本15063及以上)。 2.启用Hyper-V(Hypervisor Virtualizatio...

2019-12-02 11:37:49 40 0

原创 win10下使用VirtualBox安装CentOS

一、环境说明 1.windows: win10(64位,家庭版) 2.VirtualBox: 6.0.14 3.CentOS:CentOS-8-x86_64 二、软件下载 1.VirtualBox官网:https://www.virtualbox.org/ 2.CentOS官网:htt...

2019-11-27 20:40:55 100 0

原创 supervisor错误:ERROR (spawn error)

一、问题描述 使用supervisorctl启动网站的时候提示错误:ERROR (spawn error),如下图所示: 二、问题分析 1.查看supervisor配置文件 如:/etc/supervisor/conf.d/supervisor-mysite.conf [progr...

2019-11-13 11:04:00 1838 0

原创 Docker组件

一、说明 Docker学习笔记1来源于Docker官网,安装完docker之后基本就进行不下去了——为什么设置这些?然后就继续选一本书做入门吧。上豆瓣搜了下,综合作者,评分,及内容等因素,选择了《第一本docker书》作为入门教材。 二、Docker组件 Docker组件包括引擎,镜像(im...

2019-11-05 11:02:24 41 0

原创 Docker学习笔记1:win10安装Docker

一、学习路线 部署Django项目的时候,看到很多人使用docker进行部署,评价大多是——“不错,好用,方便”。but!然而我不会docker。啊,这种求而不得的感觉好难受。but! 难受并没有什么卵用,那就学吧。问题又来了,怎么学:有什么好的书?有什么好的教程?有什么好的博客?介于现在的很多...

2019-11-04 16:59:13 75 0

原创 Django信号Signals原理与示例(评论通知)

一、什么是信号(Signals) 官方定义见参考资料[1]。以下是个人理解:django signals是一种机制——当某个动作(action)发生时,信号(signal)允许发送器(senders)通知到接收器(receivers)。 示例:当某篇文章被评论时,生成一条消息,通知到文章的作者...

2019-10-31 17:18:06 99 0

原创 django.db.utils.OperationalError: (1366, "Incorrect string value: '\\xF0\\x9F\\x90\\x8D \\xC2...' )

该错误发生在将数据保存到数据库的时候。 一、说明 1.Python: 3.7.4 python --version 2.Django: 2.2.5 python import django django.get_version() 3.MySQL: select v...

2019-09-26 07:57:16 344 0

原创 Python虚拟环境管理工具之pipenv

一、pipenv简介 pipenv是由Kenneth Reitz编写,用于管理虚拟环境的工具。 二、pipenv的安装、升级与卸载 下面都是使用pip(某些情况下语法为pip3)进行操作。 2.1、安装 windows系统: >pip install pipenv Linux...

2019-08-29 18:19:32 1387 0

原创 Flask教程--第一个Flask应用:测试

一、概述 测试代码一般放在tests目录(如下图所示)。这里使用pytest和coverage进行测试和衡量代码。当然,也可以使用其它的库, 比如:unitest, nose等等。 二、 配置 tests/conftest.py import os import tempfile ...

2019-08-01 14:52:01 71 0

原创 Flask教程--第一个Flask应用:项目可安装化

一、什么是项目可安装化 项目可安装化就是把一个项目变成发行文件,可安装到其它环境,例如Flask。项目可安装化的好处: 1.可以从任何位置导入并使用。 2.可以使用pipinstallyourproject.whl的方式进行安装 3.测试工具可以分离测试环境和开发环境。 二、描述项目 对项...

2019-08-01 12:45:20 120 0

原创 Flask教程--第一个Flask应用:模板

Flask使用的是Jinja2作为模板引擎。当然,也可以使用其它模板引擎。 {%...%}用于流程控制语句 {{...}}用于输出内容到模板 {#...#}用于注释 #...##类似{%...%} <nav> <h1>Fl...

2019-07-31 15:56:32 48 0

原创 Flask教程--第一个Flask应用:蓝图和视图

什么是蓝图 蓝图,官方文档的解释——“ABlueprintis a way to organize a group of related views and other code.”(蓝图是一种组织一组视图及其它代码的方式),说得比较抽象,不容易理解。具体一些来说就是对代码进行模块化管理(或者说...

2019-07-30 15:08:08 162 0

原创 Flask教程--第一个Flask应用:定义和访问数据库

一、连接和断开数据库 这里的数据库使用python内置的sqlite数据库,名为sqlite3。 flaskr/db.py: # -*- coding:utf-8 -*- """ define and access database g: 独立于每一个请求的全...

2019-07-29 10:51:21 242 0

原创 Flask教程--第一个Flask应用:应用设置

应用工厂 一个Flask应用就是一个Flask类的实例,应用的所有东西都会和这个示例一起注册。最直接的方法就是在代码的最开始创建一个全局的Flask示例。但是,当项目越来越大,这样做就不不好了。 解决这个问题的方式是:写一个函数用于创建Flask实例来代替创建全局示例,最后返回这个实例。这样的...

2019-07-27 09:05:32 56 0

原创 Flask教程--第一个Flask应用:日志

为什么使用日志 记录重要信息,方便排查问题。 在Flask中使用日志 Flask中用于记录日志的是app.logger(app即Flask的实例),app.logger封装了Python内置的模块logging。当然,也可以在Flask直接使用Python内置模块logging记录日志。 ...

2019-07-22 12:59:09 80 0

原创 Flask教程--第一个Flask应用:消息闪现

为什么使用消息闪现 使用消息闪现是为了给用户一个良好的反馈。 如何使用消息闪现 在视图中,使用flash()用于闪现一个消息: flask.flash(message,category='message') flash()接收两个参数,第一个参数是闪现的消息,第二...

2019-07-09 12:55:16 116 0

原创 Flask教程--第一个Flask应用:会话session

一、Flask启用session Flask中使用session之前需要设置一个密钥app.secret_key。生成secret_key可以使用下面的方法: $ python -c 'import os; print(os.urandom(16))' b'_...

2019-06-20 12:35:34 117 0

原创 Flask教程--第一个Flask应用:请求与响应

一、请求对象 在Flask中,由全局对象request提供请求信息。我们可以使用dir()方法查看request对象的所有属性: 常用的属性有method(用于获取前端请求的方法),args(用于获取url中提交的参数)等。示例: 前端请求: 后端解析请求,根据输出可以看到请求方式...

2019-06-15 08:44:40 177 0

原创 Flask教程--第一个Flask应用:静态文件和渲染模板

一、说明 1.ubuntu: ubuntu 18.04.2 2.Python:Python 3.6.7 3.Flask: Flask 1.0.3 二、使用静态文件 静态文件一般指css、js、image,video, media等文件。Flask会去名为static的目录中寻找这些静态文...

2019-06-15 08:44:30 706 0

原创 Flask教程--第一个Flask应用:路由

一、说明 1.ubuntu: ubuntu 18.04.2 2.Python:Python 3.6.7 3.Flask: Flask 1.0.3 二、路由 1.Flask路由原理 当我们创建一个最简单的flask项目,启动服务器后,在浏览器中输入地址http://127.0.0.1:5...

2019-06-12 12:50:16 106 0

原创 Flask教程--第一个Flask应用:调试模式

一、说明 1.ubuntu: ubuntu 18.04.2 2.Python:Python 3.6.7 3.Flask: Flask 1.0.3 二、为什么使用调试模式 1、使服务器在代码修改后自动重启 当启动本地服务器后,浏览器访问http://127.0.0.1:5000/,页面显...

2019-06-12 12:50:06 450 0

提示
确定要删除当前文章?
取消 删除