Python
文章平均质量分 81
@风之所往
zhangsihui.pythonanywhere.com
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用 openpyxl 生成 excel 折线图
本文介绍了使用Python的openpyxl库从文本文件读取数据并生成带有折线图的Excel文件的过程。文章展示了如何从文本文件提取数据并转换为DataFrame,然后通过openpyxl创建Excel工作簿和折线图。重点解决了在Excel中坐标轴不显示的问题,通过调整图表布局、设置坐标轴属性等方法,最终实现了在Excel和WPS中都能正常显示的折线图。原创 2025-10-11 22:15:00 · 759 阅读 · 0 评论 -
Python GUI 框架 -- DearPyGui 简易入门
DearPyGui是一个基于GPU渲染的Python GUI框架,具有多线程、高度可定制化等特点。它提供70多种内置组件,支持主题检查、资源监控等开发者工具,并有详细的文档支持。通过简单的pip安装即可使用,基本运行流程包括创建上下文、视口设置和启动GUI。组件可通过tag唯一标识,支持回调函数处理交互事件,并能设置默认值和动态获取值。该框架还内置了完整的演示案例,便于快速学习和开发跨平台的桌面应用程序。原创 2025-09-06 22:15:00 · 1428 阅读 · 0 评论 -
FastAPI--一个快速的 Python Web
FastAPI 是一个高性能 Python Web 框架,用于快速构建 API。它基于 Starlette 和 Pydantic,支持异步编程和自动生成交互式文档。关键优势包括:极高性能(媲美 NodeJS 和 Go)、开发效率提升 200-300%、减少 40% 人为错误、完善的类型提示支持。安装简单(pip install "fastapi[standard]"),通过装饰器快速定义路由,支持请求参数验证和自动文档生成(Swagger UI 和 ReDoc)。原创 2025-08-02 17:08:31 · 1138 阅读 · 0 评论 -
Python 中的高并发 I/O
并发(concurrency)指计算机似乎能在同一时刻做许多件不同的事情。例如,在只配有一个 CPU 核心的计算机上面,操作系统可以迅速切换这个处理器所运行的程序,因此尽管同一时刻最多只有一个程序在运行,但这些程序能够交替地使用这个核心,从而造成一种假象,让人觉得它们好像真的在同时运行。原创 2024-09-14 22:15:00 · 1261 阅读 · 1 评论 -
Python 中考虑 concurrent.futures 实现真正的并行计算
思考,如何将代码所要执行的计算任务划分成多个独立的部分并在各自的核心上面平行地运行。Python 的全局解释器锁(global interpreter lock,GIL)导致没办法用线程来实现真正的并行,所以先把这种方案排除掉。原创 2024-09-07 22:15:00 · 796 阅读 · 0 评论 -
Python 中用线程执行阻塞式 I/O,不做并行计算
尽管 Python 也支持多线程,但这些线程受 GIL(global interpreter lock,全局解释器锁) 约束,所以每次或许只能有一条线程向前推进,而无法实现多头并进。既然有这么多限制,那 Python 还支持多线程干什么?原创 2024-08-31 22:15:00 · 1681 阅读 · 0 评论 -
Python 利用 Lock 防止多个线程争数据
GIL实际上就是一种互斥锁(mutual-exclusion lock,mutex),用来防止 CPython 的状态在抢占式的多线程环境(preemptive multithreading)之中受到干扰,因为在这种环境下,一条线程有可能突然打断另一条线程抢占程序的控制权。原创 2024-08-24 22:15:00 · 1009 阅读 · 0 评论 -
Python 中用 subprocess 管理子进程
由 Python 所启动的子进程可以平行地运行,这能够充分利用计算机的每一个 CPU 核心,来尽量提升程序的处理效率。虽然 Python 解释器本身有可能会局限在一个 CPU 上面,但还是很容易就能通过 Python 来驱动并协调 CPU 密集型(CPU-intensive)的任务。原创 2024-08-17 22:15:00 · 1550 阅读 · 0 评论 -
Python 中的一些魔法函数
本文介绍 Python 的一些魔法函数,如:init、new、call 等,说说这些函数有说明神奇的作用。原创 2024-08-10 22:15:00 · 1032 阅读 · 0 评论 -
Python 闭包
概念:在 Python 中,闭包(Closure)是指在一个函数内部定义另一个函数,并且内部的函数可以引用外部函数的变量,即使外部函数已经执行完毕,这些变量的值也会被保存在闭包中。原创 2024-08-04 22:15:00 · 433 阅读 · 0 评论 -
Python 中用 sort 方法的 key 参数来表示复杂的排序逻辑
内置的列表类型提供了名叫 sort 的方法,可以根据多项指标给 list 实例中的元素排序。在默认情况下,sort 方法总是按照自然升序排列列表内的元素。原创 2024-08-03 22:20:33 · 1014 阅读 · 0 评论 -
Python 通过带星号的 unpacking 操作来捕获多个元素
拆分(unpacking)是一种特殊的 Python 语法,只需要一行代码,就能把数据结构里面的多个值分别赋给相应的变量。原创 2024-07-28 22:15:00 · 712 阅读 · 0 评论 -
PyQt 信号与槽功能
基本概念:在 PyQt 中,信号(Signal)与槽(Slot)是一种用于对象之间通信的机制。信号可以由一个对象发出,而槽是用于接收信号并执行相应操作的函数。原创 2024-07-25 22:51:13 · 742 阅读 · 0 评论 -
Python 装饰器
Python 装饰器(decorator)是一种用于扩展或修改现有函数功能的函数。它可以在不改变被装饰函数的源代码的情况下,为函数添加额外的行为。装饰器的本质是一个函数,它接受一个函数作为参数,并返回一个新的函数。这个新函数通常会在内部调用被装饰的函数,并在调用前后添加一些额外的逻辑。原创 2024-07-23 22:30:00 · 861 阅读 · 0 评论 -
Python 赋值表达式
赋值表达式(assignment expression)是 Python 3.8 新引入的语法,它会用到海象操作符(walrus operator)。这种写法可以解决某些持续已久的代码重复问题。a = b 是一条普通的赋值语句,读作 a equals b,而 a := b 则是赋值表达式,读作 a walrus b。这种表达式可以在普通的赋值语句无法应用的场合实现赋值,例如可以用在条件表达式的 if 语句里面。赋值表达式的值,就是赋给海象操作符左侧那个标识符的值。原创 2024-07-20 22:15:00 · 1313 阅读 · 0 评论 -
Python 四种字符串格式化方式
格式化(formatting)是指把数据填写到预先定义的文本模板里面,形成一条用户可读的消息,并把这条消息保存成字符串的过程。原创 2024-07-11 22:32:21 · 2225 阅读 · 0 评论 -
Python 可变参数 *args 和 **kwargs 的用法
概念: 用于在函数定义中接收不定数量的非关键字参数(位置参数),这些参数会被收集到一个元组中。用法:在函数定义中,在参数名称前加上 *,如 。当调用函数时,可以传递任意数量的位置参数给 args,args 在函数内部将被视为一个元组(tuple)。示例:在上述示例中,my_function 函数可以接收任意数量的参数,在函数内部通过遍历 args 元组来处理传入的参数。概念: 用于在函数定义中接收不定数量的关键字参数,这些参数会被收集到一个字典中。用法:在函数定义中,在参数名称前加上 **,如 。当调用函原创 2024-07-17 16:55:55 · 576 阅读 · 0 评论 -
基于 Python 与 mxget 的音乐下载器
基于 Python 与 mxget 的音乐下载器需求实现一个音乐下载小工具,搜索歌曲名或演唱者名找到相关联的几首歌曲,选择序号,下载歌曲。支持下载歌词、选择下载路径、选择下载平台。环境Windows 10Python 3.8mxget 1.1.2PySide6 6.2.1mxget通过命令行在线搜索你喜欢的音乐,下载并试听。这里是它的 Github 地址 Github:mxget,有详细的使用说明,我这里就不多介绍了。不过这个 repository 是它的 Go 语言实现。至于原创 2021-11-08 00:09:51 · 1018 阅读 · 0 评论 -
Python: 生成带用户昵称的头像
Python: 生成带用户昵称的头像需求新建用户后,根据用户输入的昵称生成图片。(例:注册"钉钉"用户后,头像根据输入的名字生成)开发环境Windows 10Python 3.8Pillow 8.1.2实现蛇皮皮蛋:Python创建文字图片(居中)/多图片合并(PIL),参考这篇文章,实现了新建一个图片,并把文字渲染到图片上。代码如下:import cv2import numpy as npfrom PIL import ImageFont, ImageDraw, Image原创 2021-09-12 06:22:47 · 1958 阅读 · 0 评论 -
判断字符串是否符合 Windows/Linux 目录规则
Windows / Linux 路径 check最近项目中有一个需求,需要对获取的字符串绝对路径检查是否符合路径规则,比如 Windows 中需要以盘符开始,其中不能有一些特殊字符,在修改文件夹名或文件名会提示这些特殊字符,有 9 个:\/:*?"<>|。为什么不能包括这些字符呢?这里不做探究,可以看下这篇文章:点击实现先看下代码,再结合具体代码来理解过程。def check_path(path): """ 检查 Windows path 是否符合规则 """ loca原创 2021-06-20 19:27:09 · 964 阅读 · 0 评论 -
Python 与 FTP 服务器 -- ftputil 模块
Python 与 FTP 服务器 – ftputil 模块,文件上传下载Cre: 2021/02/22Mod: 2021/03/17前一篇文章分析了用 Python 内置的模块 ftplib 实现上传下载等功能,本篇文章就来看看另一个高水平的 FTP 库 ———— ftputil。它的官网:ftputil。项目需求与分析在之前 ftplib 的文章已经分析过,而且已经说明在本次文章中要处理一些其他问题,不再详述。点击ftplib查看。ftputilftputil 是第三方模块,是 ftpl原创 2021-06-06 20:31:13 · 2857 阅读 · 3 评论 -
Python 与 FTP 服务器 -- ftplib 模块
Python 与 FTP 服务器 – ftplib、ftputil 模块,文件上传下载(界面可视化)Datetime: 2021/02/22项目需求:已建立 FTP 服务器,通过 ip、用户名、密码连接后,上传与下载文件,要求能上传或下载多个文件或多个文件夹。Python 与 ftp 服务器相关的有两个模块:ftplib 和 ftputil。ftplib 是 Python 内置模块,无需下载安装,直接导入即可使用,不过功能较少,像 os 中 isdir、isfile、makedirs 等方法都没有,原创 2021-05-30 14:51:52 · 2205 阅读 · 0 评论 -
Python: 二进制字节流数据的读取操作 -- bytes 与 bitstring
Python: 二进制字节流数据的读取操作 – bytes 与 bitstring最近项目有个需求,需要对二进制文件读取内容,操作读取到的字节流数据,主要是查找与切片获取内容。这要求有两个标志,一个开始,一个结束,获取中间的内容。Python 的 bytes 内置了一些方法,但是却不完美。在调查后,了解到 bitstring 这个第三方包,在对字节流数据的处理上,似乎更合适。bytesbytes:一种字符序列的类型。通过比较 dir(str) 与 dir(bytes) 可知,两者的属性与方法很相似,原创 2021-05-23 16:00:12 · 29163 阅读 · 5 评论 -
Maya Python 查询引用文件中的编码问题 -- 中文乱码
Maya Python 查询引用文件中的编码问题 – 中文乱码Datetime: 2020/01/27最近在做一个功能,查询 Maya 文件中引用的其他文件。Maya 官方文档提供的方法之一是用 Python 命令来查询引用的文件。后来又使用直接读取文件获取引用文件的方法。详情可以之前的两篇文章。本文主要来说说这之间遇到的一些编码问题,编码的问题一般就是中文乱码的问题。Maya Python 命令获取引用文件因为 Maya 安装目录下的 Python(mayapy.exe)版本为 Python 2.原创 2021-05-16 22:19:03 · 2392 阅读 · 1 评论 -
查询 maya 文件中的引用文件路径 -- 直接读取文件内容获取路径
查询 maya 文件中的引用文件路径 – 直接读取文件内容获取路径Datetime: 2021年1月14日 星期四,下午 6:43:31之前查询 maya 文件中的引用文件路径,采用的是 maya Python 命令的方式。存在一些问题:Maya 客户端:目前了解到,以上方法,必须安装 Maya。版本不全匹配:Maya 版本很多,所以文件版本也不统一。以上方法要求 Maya 软件版本不低于文件版本(创建文件的 Maya 版本)。文件类型单一:由于需要打开文件获取文件的版本,以上查原创 2021-05-09 22:47:23 · 5967 阅读 · 0 评论 -
查询 maya 文件中引用文件的路径 -- 通过 mayapy.exe 及 maya Python 命令获取路径
Python 查询 maya 文件的引用节点及引用文件的路径环境Maya 2017 & 2018Python 3.6VS Code实现需求:给定一个 maya 文件,查询这个 maya 文件引用了哪些文件,返回引用的文件路径。首先,需要使用 maya 软件自带的 mayapy.exe 解释器来执行 maya 包的 Python 命令,如:cmds 的相关命令,maya 中的 Python 为 Python 2,但是开发环境使用的是 Python 3.6,所以需要变通一下。通过 su原创 2021-05-02 23:27:50 · 4374 阅读 · 10 评论 -
数据可视化:pyecharts 的几个实例
数据可视化:pyecharts 的几个实例Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts 诞生了。官方文档:https://pyecharts.org/#/基本图表 Pie:饼图from pyecharts import options as optsfrom pyecharts.charts import Page, Pie#原创 2020-12-12 23:56:05 · 4575 阅读 · 0 评论 -
一些基础的排序和查找算法(Python)
一些基础的排序和查找算法(Python)排序print("### 复杂度比较" "\n" "排序法 平均时间复杂度 最好时间 最差时间 稳定度 空间复杂度" "\n" "0冒泡排序 O(n^2) O(n) O(n^2) 稳定 O(1)" "\n" "1选择排序 O(n^2) O(n^2) O(n^2) 不稳定 O(1)" "\n" "2快速排原创 2020-11-29 22:24:12 · 157 阅读 · 0 评论 -
给定一个字符串,配置解析及存储(Python)
给定一个字符串,里面为K、V的配置信息,请构造程序将其解析及存储。原创 2020-11-15 22:49:21 · 605 阅读 · 0 评论 -
基于 Python tkinter 的查询器
简介:本文主要介绍如何用 Python 内置的 tkinter 写一个查询工具。准备环境Windows 10Python 3.7.3VS Code依赖tkinterpython-Levenshteinfuzzywuzzy目录结构及运行界面图片具体实现import tkinter as tkfrom tkinter import *from tkinter import ttkfrom tkinter import messageboxfrom fuz.原创 2020-09-21 23:24:12 · 1928 阅读 · 1 评论 -
天行数据 api 接口数据搜索问题 -- Python 版本
天行数据提供 api 接口,利用这些可以做一些事情,比如做个 Web 端垃圾查询的功能。以下是天行数据参考代码中 Python 的实例,不过很明显,这是 Python2 的例子。原创 2020-05-19 00:07:25 · 1477 阅读 · 1 评论 -
Pythonanywhere中admin管理css样式显示问题
由于 admin app 的 html 模板是直接继承 admin/base.html,导致在 pythonanywhere 上部署项目时,缺少 css 文件,所以 admin 界面不显示 css 格式。原创 2020-05-18 23:55:29 · 638 阅读 · 1 评论 -
一些书籍:Python入门与提高
这里谈谈Python相关的书籍,此目录来自github一个Python学习的相关项目,项目地址:https://github.com/jackfrued/Python-100-Days这个项目对于Python学习很全面啦,感兴趣可以去了解一下,目前标星8W多。参考书籍如下入门《Python基础教程》(Beginning Python From Novice to Professional)《人民邮电》《Python学习手册》(Learning Python)《机械原创 2020-05-19 16:24:54 · 389 阅读 · 0 评论
分享