- 博客(10)
- 收藏
- 关注
原创 UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xe4 in position
bytes数据(中文编码的部分)不能截取,要保持完整的字节串再decode就可以正常解码了。
2024-01-19 12:05:24
587
原创 sqlalchemy自动映射已存在数据表
背景对于使用sqlalchemy创建orm对象migrate创建数据表,并通过orm对象执行query查询的操作比较常见。但如果要使用sqlalchemy对已存在的数据表或由别的库创建的表执行查询等操作的时候,如何获取orm对象是解决问题的关键。官网给出的建议,称为使用数据库系统抽象层,链接地址代码示例db.pyfrom sqlalchemy import create_engine, MetaData, Tablefrom sqlalchemy import Tableengine
2022-05-31 09:05:55
1622
原创 OpenResty Macbook安装
Macbook官网推荐的安装方法是通过Homebrew,具体查看链接 https://openresty.org/cn/installation.html如果通过Homebrew安装出现问题,可以尝试以下二进制包安装方式下载二进制包 https://openresty.org/cn/download.html,下载对应版本的 .tar.gz 文件, tar -zxvf xx.tar.gz 解压缩并cd进入安装依赖 brew install pcre openssl修改配置 ./configure.
2022-03-11 15:24:43
5209
原创 归并排序理解与实例
如何从简单的排序理解归并排序两个有序数组的合并:假如给你两个已经从小到大排好序的整数数组,a1 = [1,3,5,7,9], a2 = [2,4,6,8], 使输出一个包含a1,a2所有元素的从小到大排好序的数组,当然我们视觉判断就能得出答案s = [1,2,3,4,5,6,7,8,9]合并的原理:现在稍加深入的想,这样的结果如何得到的,不难看出是依次从a1中拿一个数与从a2中拿一个比较,如果a1中的小就把a1中的数取出来,接着比较a1中下一个,再比较,如果a2中的小就把a2中的数取出来,直到a1
2022-01-25 12:20:56
411
原创 通过梳理 celery_app 与flask_app关系理解 “working outside of application context” 报错
背景flask项目中使用celery,有时遇到“working outside of application context”报错。究其原因是因为celery的实例app运行在与flask app 独立的进程空间,当在celery 任务中与flask app交互,会因为不存在flask的上下文抛出此异常解决思路在执行flask app交互的逻辑前,使用 “with app.app_context():” 手动调用flask上下文,如在使用flask_mail模块发送邮件中(以下代码仅作演示,无法运行.
2021-12-06 17:29:38
1406
原创 说透python装饰器
装饰器的执行逻辑import functoolsdef wrapper(func): print("This is wrapper") 1⃣️ @functools.wraps(func) def inner(*args,**kwargs): print("This is inner") 2⃣️ return func(*args, **kwargs) return inner@wrapperdef test(): print("This is.
2021-09-18 23:03:42
229
原创 Celery入门与Flower监控
Celery 的应用场景Web应用用户发送一个需要较长时间处理的请求;传统思想会等待请求的结果(即常见到的转圈圈);为了避免用户一直等待响应结果,在服务端可以通过异步的方式处理需要花费较长时间请求(例如调用外部服务API类似叮叮通知,邮件系统等);服务后端创建相应的任务(创建任务是很快速的过程,执行具体任务才是真正耗时的操作),并将任务ID返回(响应)给用户;在前端看来,此次请求已经成功了,但是具体邮件是不是发成功了,没有直接给出结果,如果想看状态或结果,只需要拿到返回的任务ID再发送请
2021-07-26 17:03:49
7838
1
原创 Python 实现发红包
问题描述使用 python 实现类似微信发红包的功能,尽量保持每个人收获的红包平均,要求输入总金额 money(元-float)及红包个数 num(个-int),且每人最小获得的红包额度不能小于0.01元(不考虑 money/num < 0.01此种输入情况,如money=0.1,int=100,平均每个人0.001元,输入非法)返回一个列表,长度为num,包含了每个红包的额度,顺序随机,且列表中数字总和为money思路分析难点在于如何确定红包的随机性和每个红包的总和恰好等于总金额如果
2021-04-07 18:40:35
7264
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人