
Python开发
文章平均质量分 73
jane_xing
海阔凭鱼跃,天高任鸟飞
展开
-
操作指南:在vue-fastapi-admin上增加新的功能模块
近期在github上看到一个很不错的web框架,https://github.com/mizhexiaoxiao/vue-fastapi-admin。该项目基于 FastAPI + Vue3 + Naive UI 的现代化前后端分离开发平台,融合了 RBAC 权限管理、动态路由和 JWT 鉴权,可以助力中小型应用快速搭建,也可用于学习参考。本着研究和学习的目的,尝试着添加一个新的模块,比如知识库管理。原创 2025-04-21 17:27:26 · 253 阅读 · 0 评论 -
Cython加密多层目录中的Python脚本方案
近期有一个Vue+Java+Docker项目中需要加密Python脚本的需求,调研后决定采用Cython。原创 2025-04-09 16:09:26 · 358 阅读 · 0 评论 -
Gradio:零代码构建AI服务的魔法工具箱
""",**kwargs从Weeks到Hours:开发周期数量级缩短从专家到大众:非前端工程师也能构建专业界面从演示到生产:支持从小型Demo到企业级应用行动指南尝试官方教程(30分钟入门)将现有模型转换为Web服务(1小时实践)当AI能力可以像搭积木一样快速组合,我们正站在人工智能普惠化的关键转折点。Gradio这把打开AI服务之门的钥匙,你准备好使用它了吗?原创 2025-02-25 17:23:50 · 777 阅读 · 0 评论 -
Vue和FastAPI实现前后端分离
一个是它的异步处理性能比较好,二是它可以类似java swagger的API交互文档,这个对应前后端分离多人开发非常友好。之前总结过Vue和Flask实现前后端分离,这次同样借个小项目实践、并总结下Vue和FastAPI实现前后端分离。原创 2024-04-03 15:18:34 · 3244 阅读 · 1 评论 -
将算法推理函数封装成Restful API
如果要快速构建一个算法应用,便于用户在线体验算法推理效果,采用gradio是个不错的选择。然而,要集成到业务程序中,比如要支持java等语言去调用(发送请求,获取到推理结果),此时便需要将算法推理函数封装成Restful API。这里,简单总结下快速封装Restful API的步骤。业务端要做一个演示程序,里面包含一个目标检测算法,算法人员如何将自己跑在GPU服务器上的算法程序交付给业务人员呢?将算法推理函数封装成Restful API;原创 2024-02-27 16:21:24 · 800 阅读 · 0 评论 -
网络爬虫实践小结
目前只能通过搜寻url规律,发现里面的pageId是9位数字字符,大概确定了范围,进行暴力遍历。第一步:向确定的url发送请求,接收服务器的响应信息;近期工作中要解决两个问题,一个是数据组需要网爬一些图片数据,另外一个是要批量爬取公司用于文档协同的一个网站上的附件。这里附上代码,供参考。python在网络爬虫方面提供了一些框架,Scrapy、Pyspider等,由于我们要实现的都是小功能,用一些现成的库即可。第二步:对接收到的信息进行解析,找到需要的标签内容(通常是我们需要的图片或文件的url);原创 2023-10-11 17:00:46 · 1249 阅读 · 0 评论 -
PyQt5 多线程实例
前言PyQt的所有窗口都在UI主线程中,也就是main函数中执行了QApplication.exec_()的线程中,在该线程中执行耗时较长的操作时,会导致当前窗口停止响应。为了避免上述情况发生,需要用QThread开启一个子线程去完成耗时的操作。问题描述在实现数据清洗工具时,数据量通常很大,清洗过程会比较耗时,当点击执行后,当前窗口会卡住,有个圈不停再转,直到清洗任务执行完成,用户体验非常不好。问题解决通过QThread为清洗操作创建一个线程,在主线程中触发该线程执行。子线程创建:from原创 2022-03-11 14:53:21 · 2209 阅读 · 0 评论 -
图片数据清洗
前言数据对于深度学习算法模型的效果至关重要。通常,在对采集到的大量数据进行标注前需要做一些数据清洗工作。对于大量的数据,人工进行直接清洗速度会很慢,因此开发一些自动化清洗工具对批量数据首先进行自动清洗,然后再进行人工审核并清洗,可以很大程度上提高效率。工具功能根据收集到的需求,工具主要实现了以下功能:统计数据信息(总占用空间、数量、损坏图片数);去除已损坏图片,去除模糊图片,去除相似图片,机动车车色分类,昼夜分类统计数据信息# 获取数据集存储大小、图片数量、破损图片数量def g原创 2022-03-10 19:17:44 · 15349 阅读 · 16 评论 -
python之闭包
前言闭包作为python高级特性中的一个,初学总觉其披着一层神秘的面纱,这里我们来一起揭开这层面纱吧。那什么是闭包呢?闭包,又称闭包函数,和普通的嵌套函数类似,闭包中包含外部函数和内部函数,不同之处是闭包中外部函数返回的不是一个值,而是内部函数,即闭包对象;通常,该返回的函数会被赋值给一个变量,继而被调用执行。为何要是用闭包比如,已知三条直线上某一个点的横坐标x,求其纵坐标y。如果不使用闭包,实现如下:def line1(x): return 2 * x + 1def..原创 2021-10-27 14:41:51 · 790 阅读 · 0 评论 -
初识Redis
什么是RedisRemote Dictionary Server,即远程字典服务,是一款开源的、可基于内存也支持持久化的key-value数据库,提供多种语言API。通常应用于需要处理大规模数据读写的场景中。和其它关系型数据相比,其有以下优势: 基于内存,读写操作性能优越,可以支持每秒十几万次的读写操作; 支持集群、分布式、主动同步等配置; 具备事务能力,保证了高并发场景下数据的安全和一致性。 数据结构Redis支持五种数据结构: 字符串(string)原创 2021-10-26 17:09:08 · 429 阅读 · 0 评论 -
python之装饰器
引言软件开发中,当需要创建高度重复的代码时,需要寻求一种优雅的解决方案。python中的元编程即解决这类问题,通过创建函数和类来修改、生成或包装已有的代码。装饰器就是python中用来包装函数的一种机制。内建装饰器python提供了一些内建装饰器,比如我们常用的@staticmethod、@classmethod、@property。装饰器内部的代码一般会涉及创建一个新的函数,利用*args,**kwargs接收任意参数,在该函数内部会调用被包装的函数,并返回被包装函数的结果;最后这个新创建的函原创 2021-09-24 16:55:40 · 162 阅读 · 0 评论 -
python中大数据文件读取
python中大数据文件读取python中经常会遇到读取大文件的场景。文件较小时,我通常采用下面方法,readlines(),该方法会一次性读取文件的所有行,并将其放入list中,最后存入内存中。可想而知,当文件较大是,内存占用会非常高,甚至造成内存溢出,进程被系统kill掉。# 读取方式一with open(file_path, 'r+', encoding='utf-8') as f: count = 0 for line in f.readlines(): cou原创 2021-09-16 16:50:38 · 3750 阅读 · 1 评论 -
jupyter-notebook二次开发
背景公司内部提供给算法人员用于模型训练的平台开发需求中提出了嵌入Jupyter Notebook模块,而Jupyter Notebook是开源的,方便后续对部分细节进行功能定制和优化,需要对其进行调研,并梳理出二次开发的环境搭建、版本编译、生产环境部署流程,此文档对以上工作内容进行总结。jupyter-notebook简介2.1 功能简介Jupyter Notebook官方介绍是:基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。优点举例如下:1原创 2021-09-08 17:19:02 · 4298 阅读 · 6 评论 -
C/S架构的应用程序开发实战(二)
后端服务后端用python实现,采用flask web框架。可从github上获取flasky源码,在此基础上进行业务逻辑的实现。程序结构如下:├── app # 业务逻辑实现代码│ ├── common # 公共函数实现,这里主要是数据库相关的增删改查接口实现,以及算法模型的推断功能实现│ ├── init.py│ ├── main # 视图函数实现,即供前端调用的API实现│ └── pycache├── config.py # 工程配置文件├── log.原创 2021-09-06 16:27:16 · 816 阅读 · 0 评论 -
C/S架构的应用程序开发实战(一)
项目背景近期需要开发一个对巨量的图片数据进行车辆品牌信息标注的工具,为了提高标注效率,准备先通过现有车辆品牌识别的算法模型进行下预标注,标注人员在此基础上进行审核和修改即可。另外,需要统计出各个品牌数据的数量等信息。软件架构确定用户是分散的,待标注数据量大而且通常存在用户PC机的磁盘上,软件做成一款即开即用的桌面应用是非常合适的。但考虑到要用算法进行预标注,算法模型运行要用到性能较好的GPU资源,为每个用户提供具有这样硬件资源的是不切合实际的,所以可以采用部署后端服务的方法。是采用C/S架构呢,还是B原创 2020-11-16 10:17:40 · 5269 阅读 · 1 评论 -
Vue和Flask实现前后端分离
引言近期了解了下目前比较热门的前端框架Vue.js,新技能嘛,只有实践了用起来了,才能有比较直观的体验。因此考虑写个小dmeo练练手,后端采用Flask提供几个Restfull风格的API,前端放弃惯用的flasky常用的Jinja模板引擎,采用灵活的Vue.js框架,顺便实践一把前后端分离。既然前后端分离,那么就需要在开发环境独立创建两个项目。下面逐一介绍。前端环境准备开发是在windows10系统上进行。安装node.jsnode.js自带npm,换源npm install -g原创 2020-09-16 10:54:54 · 7721 阅读 · 1 评论 -
python开发PC端桌面应用
python开发PC端桌面应用项目场景: 很多情况下需要用很短的时间开发一款在windows上离线运行的小工具,以便解决一些现实问题。比如公司近期有个紧急项目,需要根据算法需求人工标注海量的地址信息,开发周期和工具易用性上都是有些挑战的,此时选择python开发是个明智的选择。 下面对python开发桌面应用工具的步骤做下总结。开发环境准备python开发我选择在Pycharm 上进行,新建工程,配置解释器及venv,这些跟普通的python项目开发一样。安装PyQt5及PyQt5-too原创 2020-09-09 11:46:32 · 17889 阅读 · 3 评论