自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(169)
  • 资源 (10)
  • 收藏
  • 关注

原创 解决UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xc8 in position 0: invalid continuation byte

困扰了很久的问题今天终于解决了!!!异步导入csv文件提示UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc8 in position 0: invalid continuation byte原代码为: resp = requests.get(private_url).content with open(file_dir_name, "w") as fd: fd.write(resp.decode(encodin

2021-06-03 15:38:51 24727 6

原创 使用python内置的int、bin、hex、oct函数进行内置转换及注意事项

python进制转换时使用内置的int, hex, bin, oct时,要注意入参是否是字符串,以及函数入参是否必须为整数。先看一段代码:origin = 12345hex_data = hex(origin)print(hex_data) # 0x3039print(int(0x3039)) # 12345print(int(str(hex_data), 16)) # 12345print(int("0x3039", 16)) # 12345# 二进制bin_data =

2021-05-31 15:06:05 1157

原创 leetcode刷题之链表必刷题(python实现)

最近重新回顾了一下链表,在自己手动写了链表的生成以及相应的增删查改操作后,对链表的理解更加深刻,于是在leetcode上刷了对应的习题。王争老师列举了一些链表必刷题,感觉有必要做一下这些习题。链表的必刷题有:单链表反转链表中环的检测两个有序的链表合并删除链表倒数第n个结点求链表的中间结点文章目录206. [反转链表](https://leetcode-cn.com/problems/reverse-linked-list/)递归实现:迭代实现92. [反转链表 II](https://l

2021-04-17 17:47:42 1028 6

原创 python 实现单链表的基础操作:插入、删除、遍历、获取元素等

回顾一下单链表的知识,并用python实现单链表的基础操作:插入,删除,遍历,判空,清空链表,求长度, 获取元素,判断元素是否存在等。链表通过指针将零散的内存块连接在一起,链表的每个节点存储有该节点的值和下一个节点的地址。链表的第一个节点为基节点,最后一个节点是尾节点。头节点记录了链表的基地址,最后一个节点的指针指向None。链表的插入,删除操作的时间复杂度都是O(1), 单链表的遍历时间复杂度是O(n)。定义链表的同时也要定义链表节点Node,节点存储值item和指针_next, 也可理解为引用

2021-04-09 16:18:01 12941 3

原创 mysql客户端、服务端、请求过程、存储引擎相关基础知识

mysql基础知识:mysql客户端与服务端服务端进程默认为mysqld客户端进程默认为mysqlMac上mysql安装目录为:/usr/local/mysql/usr/local/mysql/bin/目录下是mysql的可执行文件mysqldmysqld_safemysql.servermysql_multi…mysql启动程序mysqld运行mysqld可直接启动一个mysql服务器进程mysqld_safe启动脚本,间接调用mysq

2021-04-06 16:03:48 291

原创 python中关于类方法,静态方法,实例方法的调用及参数传参问题

今天看到一个bug,明白了其中的原理之后对类方法,实例方法,静态方法的传参及调用有了更深刻的体会。后面自己写了一个demo,复现了这个报错,报错提示为:TypeError: fun() missing 1 required positional argument: 'value'下面是demo的代码:class Demo: def __init__(self, id: int, value: int): self.value = value self.id =

2021-03-19 17:18:50 2036

原创 图解HTTP总结03:HTTP的响应状态码介绍

通过http的状态码可以知道每次请求的结果,是成功或者失败。响应码由三位数字以及原因短语组成,其中第一位数字说明了响应的类别。汇总介绍:https://www.cnblogs.com/starof/p/5035119.html

2021-03-12 16:29:07 144

原创 微服务的使用01:Docker的介绍

为什么需要docker软件更新发布及部署低效,过程繁琐且需要人工介入环境一致性难以保证,不同环境之间迁移成本太高构建容易分发简单docker其他内容可参考之前写的一个关于docker基础知识的文档:https://blog.csdn.net/ayangann915/article/details/106873339对Docker 的理解这张图描述了docker各部分的职能和作用。Docker是C/S模式,其中Docker守护进程是服务器,执行docker命令的终端或者docker命令行是

2021-03-12 14:40:08 106

原创 图解HTTP总结02:无状态与Cookie,持续连接与管线化的介绍

无状态协议HTTPHTTP是无状态协议,即不保存请求和响应之间的通信状态。这是为了更快处理大量事物,确保协议的可伸缩性,也能减少服务器的 CPU 及内存资源的消耗。而这也导致无法用上一个请求状态来处理下一次的请求。但是无状态会导致一个用户在一个页面登录后,跳转到其他页面就没有登录信息需要再次登录。所以引入了cookie,再使用HTTP通信,就可以管理登录状态。Cookie技术通过在请求和响应的报文中写入Cookie信息来控制客户端的登录状态。Cookie 会根据从服务器端发送的响应报文内的一个叫做

2021-03-12 11:44:04 199

原创 图解HTTP总结01:TCP/IP协议族及IP、TCP、DNS、HTTP的含义与作用

web的了解web是建立在http协议(超文本传输协议)上进行通信。Web 使用一种名为 HTTP的协议作为规范,完成从客户端到服务器端等一系列运作流 程。而协议是指规则的约定。TCP/IP协议族网络(互联网)是在TCP/IP协议族的基础上运作,而HTTP是TCP/IP协议族的一个子集。计算机与网络设备之间相互通信,需要有一定的规则,这种规则就是协议。而TCP/IP是互联网相关的协议族的总称。也有说是指TCP和IP协议。而一些常见的协议,比如HTTP,TCP,UDP,IP,DNS,FTP,I

2021-03-09 14:38:11 927

原创 leetcode刷题02:二叉树层序遍历的应用(python实现)

二叉树层序遍历的应用在编写层序遍历相关的习题时,其思想都和层序遍历类似,可以复用层序遍历的代码。文章目录二叉树层序遍历的应用[102. 二叉树的层序遍历](https://leetcode-cn.com/problems/binary-tree-level-order-traversal/)[199. 二叉树的右视图](https://leetcode-cn.com/problems/binary-tree-right-side-view/)[222. 完全二叉树的节点个数](https://leetc

2021-03-02 15:30:20 418

原创 leetcode刷题01:二叉树的前序、中序、后序、层次遍历(python实现)

二叉树的前序、中序、后序、层次遍历本文主要汇总leetcode中涉及到二叉树前、中、后、层次遍历的题目以及对应的思路和解答。文章目录二叉树的前序、中序、后序、层次遍历144:二叉树的前序遍历递归实现迭代实现94:二叉树的中序遍历递归实现迭代实现145:二叉树的后序遍历递归实现迭代实现102:二叉树的层序遍历107:二叉树的层次遍历II关于普通的前后中层次遍历:目前我整理的有递归和迭代两种实现方式(前中后遍历)递归和迭代两种思路都有套路可言,比如递归实现只需要改变一下代码的位置,而迭代涉及到栈的使用

2021-02-26 14:33:20 390 2

原创 python网络编程简单实现终端发送接收消息

Socket 网络编程写一个终端发送消息的服务器客户端。# 服务端代码import socketserver = socket.socket(socket.AF_INET, socket.SOCK_STREAM)server.bind(("127.0.0.1", 8001))server.listen(5)clientSocket, clientAddress = server.accept()print("start-------")while True: data = cl

2021-02-23 15:39:39 1039

原创 mysql中是如何处理周数,一年的第一周到底从哪天开始计算?

新的一年2021年来了, 1月1日这天是星期五,不是星期一也不是星期日,这一天到底是2020年的最后一周呢,还是2021年的第一周?对我而言,这一周是2021年的第一周,但是在mysql中是如何处理呢?之前做任务的时候,在获取周数相关信息的时候,格式化时间一直用的是%U, 以至于一直认为mysql中处理周相关的逻辑时,是从第0周开始,每周日是一周的第一天。今天看DATE_FORMAT这个函数时,发现mysql中处理时间有很多种方式,我之前使用的%U只是其中的一种。比如处理周数和每周第一天,分别就有两

2021-01-08 10:17:45 2679 2

原创 使用pyinstaller通过python文件生成exe可执行文件

使用到的安装包为:pip install pyinstaller在对应的python文件目录下,有要执行的py脚本,以及favicon.ico文件,用作exe的图标运行命令:pyinstaller -F -i favicon.ico demo.pypyinstaller /user/ann/demo.py可执行exe文件在生成的dist目录下官方文档:https://pyinstaller.readthedocs.io/en/latest/requirements.html-F 表示生成单

2020-12-23 16:36:17 137

原创 Mac 下添加环境变量

参考:https://www.jianshu.com/p/463244ec27e3如果是vi,则:Esc 退出编辑模式,输入以下命令::wq 保存后退出vi,若为 :wq! 则为强制储存后退出(常用):w 保存但不退出(常用):w! 若文件属性为『只读』时,强制写入该档案:q 离开 vi (常用):q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。:e! 将档案还原到最原始的状态!...

2020-12-23 10:23:29 92

原创 使用pipenv创建python项目的虚拟环境

之前我的项目环境是使用anaconda管理,每次创建不同的虚拟环境,比较麻烦,而且都是一套的,不同项目直接实际用的包是一样的。现在发现使用pipenv管理项目环境很方便,不同项目包可以根据需求使用不同的版本。1、安装pipenv: pip install pipenv安装成功后有这样的提示:To activate this project’s virtualenv, run pipenv shell.Alternatively, run a command inside the virtualenv

2020-12-20 21:31:13 777

原创 20201209Introduction_To_Tornado 学习01

使用tornado搭建简单的web服务from tornado.options import define, parse_command_line, optionsfrom tornado.web import RequestHandlerimport tornado.httpserverimport tornado.ioloopdefine("port", default=1010, help="port----", type=int)define("debug", default=Fals

2020-12-09 15:55:11 134 1

原创 在pycharm中设置isort和black格式化代码

打开pycharm的偏好设置,选择 Tools —>External Tools可以看到右侧已经我已经添加了isort和black。没有添加可以点击下面的➕号,isort和black的配置信息:isort:Arguments: -rc $FilePath$balck:Arguments: $FilePath$Program处填的是isort和black的位置,一般都在bin目录中,可以通过解析器查看python bin目录的位置。写好代码后依次执行isort和black:最后

2020-08-20 17:16:04 1918

原创 python:列表求差

列表格式:result1 = [("2020-01",21,12,12,23,34),("2020-02", 23,34,45,56,67),("2020-05",1,2,3,4,4)]result2 = [("2020-01",43,45,56,23,34),("2020-02", 23,12,23,34,45),("2020-05",12,21,31,41,14),("2020-06",11,21,31,14,14)]orresult1 = [("2020-01",21,12,12,23,3

2020-08-20 16:23:20 5777

原创 mysql:ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction

运行sql到一半时计算机进入睡眠状态,打开后停止pycharm重新运行,出现如下错误:ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction参考:https://blog.csdn.net/qq_32447301/article/details/78688032?utm_medium=distribute.pc_relevant.none-task-blog-baidulandingword-3&sp

2020-08-10 16:38:39 426

原创 sqlalchemy更新数据与原生sql使用case when 更新

最近有个任务,将表中的存储的首拼改为全拼,比如infos表中有name字段为中文,在name_acronym字段中存储着name的首拼即拼音的首字母,现在需要将其改为全拼。表中大概有一百多万数据,一开始用的sqlalchemy,但是速度太慢,并且没跑完可能脚本就被kill了,所以后来改为了原生sql,下面记录一下我的完成过程以及踩过的坑。生成全拼使用的是slug方法,在pypinyin库中的core.py中定义了slug函数,下面是官方的定义:def slug(hans, style=Style.NO

2020-08-08 11:39:11 2335

原创 模糊查询like:百分号的使用及注意事项

普通的百分号赋值使用:print("%s" % "ann")假如我们想在前面加个百分号:print("%%s" % "ann")运行后提示错误:TypeError: not all arguments converted during string formatting这是转义的错误,如果我们想显示第一个百分号,就要使用两个百分号:print("%%%s" % "ann")同理,如果我们想在首尾均加上百分号,就要写四个百分号:print("%%%s%%" % "ann")pyt

2020-08-06 18:28:43 3638

原创 sqlalchemy多表连接查询(左外连接)思路

做任务时有个多表连接查询,在sqlalchemy中,join表示内连接,outerjoin表示外连接,一般用左外连接比较多。因为涉及的表较多,主要是要弄清楚各个表之间的关联关系,连接的时候找对关系。https://www.cnblogs.com/shengulong/p/8385966.html参考了上面的博客后,写出了我想要的代码,这里总结一下思路。找到表之间的关联:'''根据供货商supplier_id筛选goods_id, 根据goods_id筛选doc_id, 根据doc_id筛选num和主

2020-07-29 15:33:17 5884

原创 数据库读取:AttributeError: ‘list‘ object has no attribute ‘id‘

在多表连接查询时,出现下列问题:[E 200702 18:42:49 web:1524] Uncaught exception POST /accountant/order (127.0.0.1) HTTPServerRequest(protocol='http', host='pfzone.senguo.cc:5555', method='POST', uri='/accountant/order', version='HTTP/1.1', remote_ip='127.0.0.1', head

2020-07-02 20:16:45 6831

原创 Docker 的配置和使用

Mac 版Docker 客户端下载:https://docs.docker.com/docker-for-mac/install/安装之后打开preference,增加镜像源,这样下载需要的镜像时速度会很快,这里装的是清华镜像源。清华源链接:https://mirrors.tuna.tsinghua.edu.cn在Docker Engine中添加如下内容:{ "registry-mirrors": [ "https://mirrors.tuna.tsinghua.edu.cn"

2020-06-20 16:12:26 521

原创 使用postman解决浏览器POST测试时登录问题:未登录无法进行POST提交

在写后端接口时需要测试接口是否可用,这里使用postman进行接口的测试。使用浏览器时可以进行get请求,但是post就会提交失败,有博主说在浏览器控制台输入以下js代码可以进行post提交:fetch(new Request('url',{ method:'POST', headers: {'Content-Type': 'application/x-www-form-urlencoded'}, body:"param1=value1&param2=value2"}

2020-06-20 15:43:20 8218

原创 python: tuple object is not callable

错误提示:TypeError: 'tuple' object is not callable元组不可用,最终发现是在写接口api时,各接口之间忘记加上逗号分隔导致。在每个接口后面加上逗号即可。

2020-06-20 15:30:02 6740

原创 flask:Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR)

写flask项目时遇到问题:Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR)500,服务器报错,网上找了很多解决方案都不对,最后发现是代码使用session时报错。 session['uid'] = user_info.id用户登录时需要保存用户的id,加密时需要secret_key,需要在setting配置中注明,但是我没有添加,所以一直提示500错误。最后在s

2020-06-01 12:40:41 9923

原创 python操作redis数据库:string,list,set,hash

Mac 下安装Redis 图形化管理工具 Redis DeskTop Manager–rdm:链接:https://pan.baidu.com/s/1eFPf4mzVtdPNIJ9TgwzXKA 密码:3kceredis主要存储类型:字符串,散列,列表,集合,有序集合启动数据库:$ src/redis-server$ src/redis-cli字符串set --设置值get – 获取值mset --设置多个键值对mget --获取多个键值对append --添加字符串del --

2020-05-30 16:34:12 557

原创 python绘制奥运五环图

奥运五环图:使用turtle绘图,代码如下:import turtleturtle.width(10)turtle.color("blue")turtle.circle(100)turtle.penup()#画笔抬空,没有移动痕迹turtle.goto(250,0)turtle.pendown()#落笔,绘画有痕迹turtle.color("black")turtle.circle(100)turtle.penup()turtle.goto(500,0)turtle.pend

2020-05-26 17:11:20 4172

原创 flask:sqlalchemy.exc.InvalidRequestError

问题:sqlalchemy.exc.InvalidRequestError:Object '<Student at 0x7fe27328e898>' is already attached to session '2' (this is '8')原因是session交叉混用。参考:https://www.jianshu.com/p/778892276bea

2020-05-14 19:27:01 2059

原创 002卷积神经网络基础知识

卷积神经网络基础知识卷积神经网的基本定义以卷积结构为主(主干层,还包括池化层等),搭建起来的深度网络(主要解决图片问题,如图像的目标检测)将图片作为网络的输入(输入数据结构,n * w * h * c ),自动提取特征(参数优化的过程),并且对图片的变形(如平移、比例缩放、倾斜)等具有高度不变形。(在进行变形后仍能识别出为人脸)卷积神经网的基本网络结构单元卷积池化激活B...

2020-05-11 18:53:35 854

原创 001深度学习基础知识

文章目录发展历程感知器人工神经网络前向运算反向传播梯度梯度下降算法局部最优解常见的深度学习模型目标检测关键点定位活体检测相似性度量人脸属性回归深度学习基础知识发展历程人工神经网概念—>感知器模型—>多层感知器模型—>反向传播算法—>卷积神经网络—>深度学习—>AlexNet感知器第一个具有完整算法描述的神经网络学习算法(称为感知器学习算...

2020-05-11 17:42:05 539

原创 HTTP三次握手过程分析

如图为http三次握手时序图:第一次握手:客户端向服务端发送第一个请求:创建连接数据包的请求,其中标识位SYN=1(表示这是创建请求的数据包),同时发送Seq=X(数字)服务端收到客户端的请求,知道客户端要与自己创建连接,服务端就会开启一个TCP的socket的端口,端口开启之后,返回给客户端相关信息。第二次握手:服务端返回信息给客户端:标志位SYN,ACK=X+1,Seq=Y客户端收到服务端的信息,知道服务端允许自己打开创建的TCP连接,就给服务端发送信息表示确认第三次握手:客户端发送确认信息

2020-05-10 15:51:12 2680

原创 python: 迭代器和生成器

迭代器迭代类似于循环,每一次重复的过程称为迭代,每一次迭代的结果会被用作下一次迭代的初始值。提供迭代的方法被称为迭代器for i in 'asdc': print(i)for的作用是触发这个迭代器的迭代功能,字符串是容器也是迭代器,每次从容器里依次拿出一个数据,就是迭代操作。对容器对象调用iter()方法可以得到迭代器,调用next()迭代器会返回下一个值s = 'abcd'...

2020-05-01 14:42:08 168

原创 python:deque的使用

标准库collections的deque,是一个双端循环队列,可以限制存储容量from random import randintfrom collections import dequehis = []his2 = deque([], 5)#限制长度为5N = randint(0,100)def guess(k): if k == N : print("猜正确...

2020-04-30 23:03:36 286

原创 python实现文章词频统计

Counter的使用:from random import randintfrom collections import Counterdata = [randint(0,10) for x in range(20)]print(data)c = Counter(data)print(c)result:[8, 8, 3, 4, 3, 0, 0, 9, 1, 0, 0, 2, 1,...

2020-04-30 20:08:44 932

原创 感知机学习:鸢尾花二分类

感知机二分类模型:????(????)=sign(????⋅????+????)最小化损失函数:import pandas as pdimport numpy as npfrom sklearn.datasets import load_irisimport matplotlib.pyplot as plt加载数据集:iris = load_iris()iris:‘target_names’: arra...

2020-04-23 17:24:10 2479 1

原创 flask web:构建MVC框架

源码下载:项目目录:base_setting.py:是默认的设置信息,一般存放公共的,如端口号等SERVER_PORT = 5000DEBUG = FalseSQLALCHEMY_ECHO = Falselocal_setting.py:存放开发时需要的信息,如数据库,开发时debug为TrueSQLALCHEMY_DATABASE_URI = "mysql://root:roo...

2020-04-13 21:59:39 3126

MVC框架构建基础源码.zip

python flask web 构建MVC框架,文章:https://blog.csdn.net/ayangann915/article/details/105497872

2020-04-13

葡萄酒分类问题资料.zip

葡萄酒分类问题csv文件

2020-03-28

shell编程ppt

资源是课件内容,Linux中的shell编程课件ppt,我的博客shell编程中的内容就是整理的ppt中的部分内容

2019-04-14

xml入门案例源码

博客xml入门里面的案例源码,详细文章参见我的博客《XML入门》

2019-04-12

数据库课程设计医院病房管理系统需求分析

数据库课程设计医院病房管理系统需求分析完整版,以前课程设计写的

2019-01-11

Android记事本的实现

期末实现的android记事本小项目,能够正常运行,使用了Android自带的Sqlite数据库

2019-01-08

Android音乐播放器

期末实现的一个Android音乐播放器,能够播放暂停音乐显示音乐,界面有点丑。。。能够正常运行

2019-01-08

登录界面的图片资源

响应式开发实战实现登录界面,内附代码,图片,以及关于display:box的资料

2018-11-02

数据库课程设计医院病房管理系统

有需要的朋友们去我的GitHub下载,可以的话顺便给个star,谢谢你们:https://github.com/annyangya/Hospital

2018-10-13

某课课程快速入门Android App实战课程源代码

某课网实战课程快速入门Android App项目课程源代码,绝对完整,绝对无误

2018-08-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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