Python随笔
文章平均质量分 69
utmhikari
talk is cheap code is rich
展开
-
【Python随笔】一天搞定,爬虫爬取w3schools的sql语句案例集
本文就来详细讲述,爬取w3schools网站里SQL语句的实现方式,以及里面需要注意的一些点。通过Python+BeautifulSoup,一天可以搞定!原创 2023-03-11 17:22:18 · 646 阅读 · 0 评论 -
【Python随笔】python进程池ProcessPoolExecutor的用法与实现分析
在python开发期间,由于GIL的原因,不能直接采用并行的方式处理代码逻辑。在multiprocessing库的支持下,python程序能够启动子进程执行特定的任务,但子进程的管理也成为了问题。为了简化用户开发成本,python在concurrent.futures下内置了ProcessPoolExecutor这一数据结构,实现了简单的进程管理及任务调度。如果没有特别的需求,开发者只需要用ProcessPoolExecutor即可实现并行执行任务。因此,本文简单对ProcessPoolExecutor的实原创 2021-06-08 22:03:01 · 32196 阅读 · 3 评论 -
【Python随笔】python轻量级消息队列库celery在fastapi的应用
python语言,一般适用于快速实现业务需求的用途,在大型架构方面其应用范围并没有Java、Golang以及C++那么丰富,因此相对来讲还没有形成非常统一的技术体系。在某些需求中可能需要开发多个服务,服务之间需要实现异步通信,甚至是调用对方的函数。celery就是一个典型的例子,它提供了以将python函数注册到消息队列的方式暴露服务的方法,并且支持RabbitMQ、Redis等多种Broker中间代理形式。celery同时也支持多个python的web框架,在其介绍页中,也明确说明了Tornado、Dj原创 2020-11-29 20:43:12 · 7926 阅读 · 5 评论 -
【Python随笔】PyQt5检查窗口是否在屏幕前台被激活的方法
自己做的基于PyQt5效率工具有一个优化需求:当窗口不在前台激活的情况下,不做后台任务,因此需要检查窗口是否在前台PyQt的接口文档定义啥的找起来比较复杂,坑也比较多,stackoverflow上边也没有什么很完美的答案经过自己一番探索,找到其中一个方式,(假设有继承QWidget)代码如下:# 是否在前台active,假设点到另一个窗口激活,这个就是Falseself.window().isActiveWindow()# 窗口是否最小化self.window().isMinimized()原创 2021-10-22 11:57:08 · 1739 阅读 · 0 评论 -
【Python随笔】PyQt5的QListView兼容左键双击事件和右键上下文菜单的方法
本文讲述一种在PyQt5的QListView组件使用中,兼容左键双击事件和右键上下文菜单的方法原创 2022-10-02 03:35:38 · 2459 阅读 · 0 评论 -
【Python随笔】python的os.walk方法源码分析
在日常python编程中,有很多遍历文件夹内文件的需求,而os.walk方法就是一个满足该需求的例子。不熟悉这个方法的同学,刚开始用os.walk的时候难免踩坑。因此本文采用源码分析的方式,讲述os.walk的机理,让大家对于这个方法有更加深入的理解。以python3为例,os.walk方法的源码如下:def walk(top, topdown=True, onerror=None, followlinks=False): """Directory tree generator. F原创 2020-11-15 15:56:19 · 880 阅读 · 0 评论 -
【Python随笔】python的web开发——WSGI、ASGI、uvicorn与FastAPI
今天这篇文章,聊一下python在web开发上的一些基础实现,阐述下自己理解中的WSGI、ASGI,以及拿uvicorn+FastAPI的组合举个ASGI应用的例子。原创 2022-08-14 15:43:05 · 2160 阅读 · 0 评论 -
【Python随笔】python多线程什么情况下可以并行?什么情况下不能?
在python面试里,多线程是避不开的话题,其中一个经典问题就是,多线程是不是并行运行。这个问题的答案,说是也不对,说不是也不对,得分情况讨论。本文就带领大家,分析并回答这个问题。...原创 2022-07-03 00:34:08 · 650 阅读 · 0 评论 -
【Python随笔】掌握子进程subprocess模块的使用方法
在开发期间,很多时候我们会需要执行一段终端命令,或者是执行其他程序返回或者文件输出结果。这种时候,我们就需要用到模块。虽然我们用也可以达到执行命令的需求,但用只是干发一段命令,对于执行命令的程序,我们没有办法跟踪它的内部状态以及执行结果,因此从稳定性的角度来讲不是一个好的选择。因此,本篇文章讲解下子进程模块的的基础应用,让没用过这个模块或是经常踩坑的同学都避避坑。...原创 2022-07-02 23:46:07 · 2186 阅读 · 0 评论 -
【Python随笔】如何提取python函数的接口定义信息
本文对python的function函数对象进行剖析,给出一种提取函数定义信息、参数信息、参数类型标注信息(typing)、函数体(code object)信息的例子原创 2021-12-12 15:39:36 · 984 阅读 · 0 评论 -
【Python随笔】如何访问类实例里带双下划线的属性
学过python的我们都知道在python的类实例instance的__init__函数里,可以初始化这个instance的属性。属性的命名有许多种,比如有一个例子:class Student: def __init__(self, name, gender, age): self.name = name self._gender = gender self.__age = age这三种属性名分别是:不带下划线、带一个下划线、带两个下划线假设有原创 2021-10-06 20:45:39 · 482 阅读 · 0 评论 -
【Python随笔】用C++编写Python的扩展模块
近期笔者在研究python内部部分模块的实现机理,研究着研究着就开始硬刚C源码了。想着先前工作或是日常也没有体验过用C++编写python库,于是就刚好学习了一下。用C或者C++编写python的扩展库,建议用Visual Studio宇宙第一IDE,一来能够同时支持python跟C,二来调试功能非常强大。入门上手的话,可以参考下面的文档:官网文档:扩展和嵌入 Python 解释器VS文档:Create a C++ extension for Python编写的库叫做cplayground,只包原创 2021-10-05 00:53:24 · 519 阅读 · 0 评论