Python
文章平均质量分 90
Python
Dontla
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Python argparse库介绍(内置的命令行参数解析库)(未检查)
功能用法创建解析器添加参数解析参数必选参数不加--,如可选参数加--,如设置默认值设置类型type=int限制取值开关参数查看帮助argparse是 Python 编写命令行工具的基石。无论是小脚本还是完整 CLI 应用,学会它能让你的代码更专业、更易用。👉建议练习:尝试写一个带--input--output--verbose参数的脚本,实现文件复制或数据处理功能。原创 2025-10-07 18:20:25 · 1169 阅读 · 0 评论 -
Python测试框架:unittest、pytest对比
是 Python 中两个常用的测试框架,它们既有相似之处,也有显著的区别。原创 2025-09-17 19:31:24 · 1124 阅读 · 0 评论 -
设计模式DAO层介绍(Data Access Object数据访问对象)(以Python ORM框架SQLAlchemy为例)(service层、服务层、业务逻辑层)
模型类对应数据库中的表,通常使用。原创 2025-09-13 19:12:04 · 745 阅读 · 0 评论 -
Python SQLAlchemy中Session作用(ORM对象关系映射核心组件)(瞬态Transient、脏Dirty、一级缓存)sessionmaker(bind=engine)
是 SQLAlchemy ORM 的核心,它通过事务管理、状态跟踪、缓存和查询接口,将复杂的数据库操作抽象为面向对象的操作。是ORM(对象关系映射)的核心组件,它在应用程序与数据库之间充当桥梁。的存在确保了数据操作的可靠性、性能优化和资源管理的便捷性。在SQLAlchemy中,原创 2025-09-12 23:01:47 · 956 阅读 · 0 评论 -
pip freeze如何生成带有约束符号大于符号小于符号的requirements.txt(版本约束格式)pip-compile工具、requirements.in
文件全是用大于小于符号限定范围的,结果我装好后,执行了一下pip freeze,结果文件都变成等号了,怎么办?如果你的目标是记录当前环境中已安装的包版本(例如用于部署或调试),则无需修改。如果你需要更灵活的版本约束(例如允许某些包的版本浮动),可以手动修改。中的版本约束安装,确保文件中的版本约束是明确的(例如。文件中的版本约束格式不同。如果你希望安装依赖时严格按照。文件生成带有版本约束的。替换为合适的符号(如。原创 2025-09-03 22:09:02 · 1041 阅读 · 0 评论 -
pip-tools介绍(一个用于管理Python项目依赖关系的工具集)(pip-compile、pip-sync、requirements.in、requirements.txt)
是 Python 项目依赖管理的利器,通过自动化解析和锁定依赖版本,解决了手动管理依赖的复杂性和风险。它不仅提升了开发效率,还增强了项目的可维护性和稳定性,是构建高质量 Python 项目的推荐工具。是一个用于管理 Python 项目依赖关系的工具集,旨在解决依赖包版本冲突、环境一致性等问题。它通过自动生成和锁定依赖版本,确保项目在不同环境中(开发、测试、生产)的依赖一致性和稳定性。确保开发、测试和生产环境使用相同的依赖版本,避免因版本差异导致的问题。在多个服务中统一依赖版本,减少环境差异导致的故障。原创 2025-09-03 22:06:49 · 808 阅读 · 0 评论 -
requirements.in文件生成与使用(依赖定义文件,用于指定项目顶级依赖库,不指定具体版本)(pip-tools、requirements.txt、pip-compile)大于小于、版本约束文
灵活控制版本避免手动维护是 Python 项目依赖管理的核心文件,它通过分离依赖定义与版本锁定,实现了依赖管理的自动化和可重复性。通过遵循以下原则,可以高效使用。原创 2025-09-03 21:57:00 · 816 阅读 · 0 评论 -
pip-compile工具介绍(用于生成和管理Python项目的依赖版本锁定文件requirements.txt))(requirements.in、pip-sync)
pip-compile是pip-tools的核心工具,用于生成精确锁定版本的Python依赖文件(如requirements.txt)。它能解析项目的requirements.in、setup.py或pyproject.toml文件,自动计算所有依赖及其子依赖的兼容版本,确保环境一致性。主要功能包括版本锁定、依赖升级(--upgrade参数)和与CI/CD集成,支持通过pip-sync同步环境。适用于开发、测试和生产环境,有效解决依赖冲突问题,提升项目稳定性。典型工作流程包括创建依赖文件、编译生成锁定版本、原创 2025-09-03 21:39:11 · 1062 阅读 · 0 评论 -
Python怎么根据缺失模块名找到正确包名?(pip search <模块名>)PyPI(Python Package Index)命名规则、Python包命名规范
Python 的包名和模块名之间的差异是由。在较新版本中被弃用,推荐使用。或手动搜索 PyPI。原创 2025-09-03 19:19:08 · 1096 阅读 · 0 评论 -
python pip命令介绍(pip指令)pipdeptree、pip.ini
是 Python 包管理的核心工具,掌握其命令和参数能显著提升开发效率。对于团队协作,建议通过。管理依赖,并结合虚拟环境避免版本冲突。原创 2025-09-03 18:34:38 · 1190 阅读 · 0 评论 -
pip completion工具作用(生成命令行自动补全脚本)(与pip-bash-completion区别)
的工具,它能够让你在使用 Bash、Zsh 或 Fish 等 Shell 时,通过按。通过简单的配置,即可实现命令行自动补全,减少重复输入和错误。是提升 Python 开发效率的小工具,尤其适合频繁使用。自动补全能避免拼写错误,确保命令和参数的准确性。),还支持高级参数(如镜像源、虚拟环境路径等)。命令及其参数,从而提升操作效率。补全功能不仅适用于基础命令(如。原创 2025-09-03 18:33:32 · 1044 阅读 · 0 评论 -
uvx命令介绍(uv命令核心命令之一,用于隔离环境快速运行Python命令行工具或脚本,无需永久安装依赖)结合了pipx和npx功能,更快、隔离更强,适合临时任务或需要严格环境隔离的场景;uv安装uv
的功能,但性能更快、隔离性更强,适合临时任务或需要严格环境隔离的场景。)的性能瓶颈和依赖污染问题。无论是开发、CI/CD 还是跨团队协作,是 Python 开发中高效执行临时任务的利器,通过。是 Python 包管理工具。,无需永久安装依赖。的核心命令之一,主要用于在。,解决了传统工具(如。原创 2025-08-22 15:29:14 · 2703 阅读 · 0 评论 -
Pydantic介绍(基于Python类型注解的数据验证和解析库)(BaseModel、校验邮箱校验EmailStr、BaseSettings)
- 自动校验:实例化模型时,Pydantic 会自动校验输入数据的类型和格式。(2) 数据转换- 隐式类型转换:支持将原始数据(如字符串、JSON)转换为指定类型。(3) 错误处理- 详细错误信息:校验失败时抛出 ,包含字段名、错误类型和具体原因。(4) 默认值与可选字段- 默认值:为字段设置默认值,若未传入则使用默认值。- 可选字段:使用 标注可选字段(可为 )。(5) 高级类型支持- 复杂嵌套结构:支持嵌套模型、列表、字典等复杂类型。2. 核心设计理念1. 类型驱动原创 2025-08-20 15:22:54 · 1148 阅读 · 0 评论 -
python命令参数(python --help、python参数、python解释器参数)(以python3.8.10为例)
sys.path通过使用-s和-S选项,你可以控制Python解释器在初始化时如何设置和修改sys.path,以及是否允许自动导入某些模块。这可以帮助你创建一个更干净、更可控的Python执行环境,特别是在需要精确控制模块加载来源和顺序的场合。环境变量在Python中扮演着重要的角色,它们提供了一种在操作系统层面上配置Python行为的方法。通过设置这些环境变量,用户可以影响Python解释器的启动过程、模块搜索路径,以及其他行为。作用。原创 2025-08-20 13:43:57 · 816 阅读 · 0 评论 -
Python setuptools介绍(打包构建分发工具,distutils模块扩展)setup.py、setup.cfg、pyproject.toml、entry_pointsMANIFEST.in
摘要: setuptools 是 Python 项目打包、构建和分发的核心工具,扩展了原生 distutils 功能。它支持元数据管理、依赖声明(install_requires)、开发模式安装(pip install -e .)、资源文件打包及命令行工具生成(entry_points)。通过 setup.py、setup.cfg 或 pyproject.toml 配置项目,可构建分发包(.whl/.tar.gz)并上传至 PyPI。其优势包括跨平台支持、依赖自动解析和插件系统集成,适用于库、应用及插件开发原创 2025-08-19 14:19:45 · 924 阅读 · 0 评论 -
pyproject.toml介绍(Python项目用于配置构建系统、依赖管理和工具链的核心配置文件,取代传统setup.py和setup.cfg文件)sdist、poetry、setuptools
sdist 是 Python 中用于创建源代码分发包(Source Distribution)的命令,全称为 source distribution。它通过将 Python 项目的源代码打包成标准化的压缩文件(如 .tar.gz 或 .zip),方便开发者分发和安装项目。原创 2025-08-18 21:34:22 · 1147 阅读 · 0 评论 -
Python Alembic介绍(数据库迁移工具,专为配合SQLAlchemy(ORM库)设计,用于管理数据库模式的变更)upgrade升级数据库、downgrade回滚数据库、env.py
生产部署。原创 2025-08-18 20:47:22 · 1183 阅读 · 0 评论 -
Python SQLALchemy介绍(提供完整SQL抽象层和ORM功能,允许通过Python对象操作数据库,同时保留对原生SQL的访问能力)
关系映射6. 使用示例(1)定义模型(2)CRUD 操作。原创 2025-08-18 14:07:17 · 978 阅读 · 0 评论 -
业务域模型Domain Model介绍(领域驱动设计DDD的核心概念,用代码形式表达业务知识)实体Entities、值对象Value Objects、聚合Aggregates、业务规则、领域模型
业务域模型。原创 2025-08-17 15:23:51 · 956 阅读 · 0 评论 -
Python代码规范与静态检查(ruff/black/mypy + pyproject.toml + Makefile)自动化工具链介绍
是一种现代 Python 项目开发的最佳实践,旨在通过自动化工具统一代码风格、检查潜在错误、提升代码质量,并通过配置文件和构建工具简化开发流程。,开发者可以构建一个高效、规范且易维护的 Python 项目流程,显著提升代码质量和团队协作效率。代码规范与静态检查(结合。原创 2025-08-16 20:50:20 · 1138 阅读 · 0 评论 -
python pytest介绍(python测试框架)(@pytest.mark.parametrize、@pytest.fixtures)pytest命令、pytest指令
pytest是Python中流行的测试框架,以简洁语法和强大功能著称。它支持自动发现测试用例、参数化测试、fixtures资源管理,并提供丰富的断言和插件系统(如生成HTML报告、并行测试)。核心功能包括测试函数/类组织、异常测试、标记分类等,适用于单元测试到复杂集成测试场景。通过插件扩展和命令行参数,pytest能高效集成到开发流程和CI/CD中。其优势在于低学习成本、高扩展性和详细错误调试,是提升Python项目测试质量的首选工具。原创 2025-08-16 20:08:25 · 972 阅读 · 0 评论 -
pytest tmpdir fixture介绍(tmpdir_factory)(自动在测试开始前创建一个临时目录,并在测试结束后删除该目录)
fixture 来创建临时目录,并验证其功能。如果你需要更复杂的临时文件管理,可以结合。(会话级临时目录)或。原创 2025-08-16 19:48:44 · 846 阅读 · 0 评论 -
Gunicorn(Green Unicorn)介绍(高效Python WSGI HTTP服务器,为生产环境设计,用于Django、Flask、FastAPI等程序部署)gevent、uvicorn
Gunicorn 是 Python Web 生态中不可或缺的部署工具,凭借其高性能、灵活性和易用性,成为 Django、Flask 等框架的首选服务器。无论是小型项目还是企业级应用,通过合理配置 Gunicorn,都能实现高效、稳定的 Web 服务。原创 2025-08-13 14:12:10 · 734 阅读 · 0 评论 -
Python协程(Coroutine)介绍(一种轻量级的并发编程模型,用于实现异步操作和高效任务调度,适合I/O密集型任务)asyncio、await、greenlet
Python 协程(Coroutine)是一种轻量级的并发编程模型,用于实现异步操作和高效的任务调度。它通过协作式多任务机制(程序员主动控制任务切换)在单线程内实现并发执行,特别适合 I/O 密集型任务(如网络请求、文件读写)。当一个协程遇到 I/O 阻塞时,会主动让出 CPU 执行权,切换到其他协程,待 I/O 完成后再恢复执行。多个协程可以在一个线程内交替执行,无需线程切换的开销。相比多线程,协程的上下文切换成本极低(仅保存和恢复程序状态,而非操作系统级别的线程切换)。原创 2025-08-12 14:07:14 · 1093 阅读 · 0 评论 -
python编译so、python打包可执行文件(python生产环境解决方案)Cython、PyInstaller、Nuitka、虚拟环境venv支持
通过 PyInstaller 等工具,可以将 Python 脚本打包为独立的 Linux 可执行文件,无需目标机器安装 Python 解释器。原创 2025-05-26 10:56:01 · 1706 阅读 · 0 评论 -
Cursor MCP客户端与MCP服务端进程间通信方式解析(FastMCP框架、mcp.run(transport=‘stdio‘))MCP通信原理、自动工具发现机制、元数据协议、JSON-RPC
以Cursor与本地MCP天气服务器通信为例,FastMCP框架采用了基于标准输入/输出流(stdin/stdout)的通信设计,通过参数配置实现进程间通信。这种机制允许任何能够控制进程IO流的应用程序与MCP服务进行交互。# 核心通信配置mcp.run(transport='stdio') # 使用stdin/stdout作为通信通道。原创 2025-05-21 10:11:13 · 1807 阅读 · 0 评论 -
IDE不可查询(不可跳转)时,查看python文档方法(检查可用方法)vscode指定python解释器路径(python虚拟环境解释器)python解释器位置、获取mcp工具列表
虚拟环境里,在编辑器里没法跳转python文档。效果跟在python交互式环境差不多。如图,我这用了需要手动激活的。虚拟环境,库都安装在。原创 2025-05-21 09:46:02 · 794 阅读 · 0 评论 -
python venv不适合变更路径(路径变更)的几种解决方案(venvpack、pip download、pip install --no-index --find-links=packages)
而不是跨机器或跨路径的迁移。它的路径依赖特性确实会导致迁移时的不便,但有一些方法可以缓解或解决这个问题。的设计目标是本地开发隔离,而非跨机器迁移。,其中包含 Python 解释器的符号链接(软连接)和依赖包。Docker 容器完全独立于宿主机环境,解决了路径依赖问题。会自动修复路径问题,确保虚拟环境在新路径下正常运行。这种方法完全避免了路径问题,但需要联网下载依赖包。如果路径不一致,还需要检查虚拟环境中的脚本(如。如果目标机器的 Python 环境路径与源机器。)是否有硬编码路径,并手动替换为新路径。原创 2025-05-13 14:36:42 · 1469 阅读 · 1 评论 -
python打印颜色(python颜色、python print颜色、python打印彩色文字、python print彩色、python彩色文字)
【代码】python打印颜色(python颜色、python print颜色、python打印彩色文字、python print彩色、python彩色文字)原创 2025-04-25 17:51:21 · 1229 阅读 · 0 评论 -
Python Flask并发demo(http并发与锁)独占接口、monkey功能还不太确定
flask接口默认不支持并发,加了spawn后由于某种原因还是不能并发,还需再加个monkey;如果有接口不适用于同时操作,可通过加锁来控制。这个设计允许 Flask 应用在处理并发请求时保持高性能,同时为需要独占执行的操作提供了安全保障。原创 2025-03-31 14:36:54 · 961 阅读 · 0 评论 -
uv命令介绍(高性能Python包管理工具,旨在替代pip、pip-tools和virtualenv等传统工具)uv介绍、uv工具
团队(Ruff 和 Black 的开发者)推出的高性能 Python 包管理工具,旨在替代。快 10-100 倍)、支持全局依赖缓存,并兼容。原创 2025-03-14 16:17:42 · 4779 阅读 · 0 评论 -
python panel网页报错:Application did not publish any contents(在panel serve命令下,脚本需要在模块级别定义可服务的对象)
确保所有函数在模块级别可访问,并且不依赖于。原创 2025-01-08 07:30:00 · 885 阅读 · 0 评论 -
shell exec命令在docker容器shell执行python脚本中的应用(进程替换后能使python进程直接接收到信号,同时减少了额外的进程)shell $@的作用:
使用exec替换当前的 Shell 进程,使你的应用程序成为容器中的主进程,确保信号正确传递并优化资源管理。这在 Docker 容器中是最佳实践,有助于构建更稳定和高效的应用程序容器。$@$@是一个强大的工具,用于在 Shell 脚本中处理和传递多个参数。"$@"在双引号内使用时,可以确保每个参数都被正确地传递和解析,避免因空格或特殊字符导致的问题。在 Docker 容器的入口脚本中使用"$@"可以提高脚本的灵活性和可复用性,使容器能够根据需要接受不同的参数。原创 2025-01-04 07:45:00 · 1397 阅读 · 0 评论 -
《LLM入门教程》大模型教程笔记7:一、面向开发者的提示工程——3. 迭代优化(初始提示、解决生成文本太长、处理抓错文本细节、添加表格描述)
在开发大语言模型应用时,很难通过第一次尝试就得到完美适用的 Prompt。但关键是要有一个良好的迭代优化过程,以不断改进 Prompt。相比训练机器学习模型,Prompt 的一次成功率可能更高,但仍需要通过多次迭代找到最适合应用的形式。本章以产品说明书生成营销文案为例,展示 Prompt 迭代优化的思路。这与吴恩达在机器学习课程中演示的机器学习模型开发流程相似:有了想法后,编写代码、获取数据、训练模型、查看结果。通过分析错误找出适用领域,调整方案后再次训练。原创 2024-12-30 07:15:00 · 1165 阅读 · 0 评论 -
vscode Snippets代码片段、预定义代码模板(自动添加作者、时间信息)(Preferences: Configure User Snippets)python文件头、File Header
是一组预定义的代码模板,可以通过输入特定的前缀并按下触发键(通常是。原创 2024-12-28 08:15:00 · 3965 阅读 · 0 评论 -
python代码在生产环境部署有必要打包.so文件吗?(python打包so、python so、python编译so)共享对象文件
将Python代码编译成.so。原创 2024-12-23 09:39:54 · 1442 阅读 · 0 评论 -
Anaconda命令(Anaconda指令)
Anaconda通过强大的conda命令行工具,提供了灵活的环境和包管理功能。掌握这些命令不仅能够提升开发效率,还能确保项目依赖的一致性和可移植性。通过本文的介绍,期望读者能够熟练运用Anaconda命令,优化数据科学和开发流程。无论是创建和管理环境、处理包依赖,还是导出与导入环境配置,Conda都为开发者提供了便捷高效的解决方案。原创 2024-12-21 06:45:00 · 3073 阅读 · 0 评论 -
vscode怎么设置anaconda python解释器(anaconda解释器、vscode解释器)
【代码】vscode怎么设置anaconda python解释器。原创 2024-12-19 11:18:47 · 2601 阅读 · 0 评论 -
python虚拟环境怎么下载离线包文件(python venv、python离线包、python wheel、pip包安装文件、python下载)pip download -r xx --dest
激活虚拟环境并导出依赖包列表。使用下载所有包的离线文件。在没有互联网连接的机器上,使用离线安装这些包。这样,就可以将虚拟环境中的所有包下载到本地,并在没有网络的环境中进行安装。原创 2024-12-03 22:20:56 · 1817 阅读 · 6 评论 -
为什么操作系统有两个python pip?/usr/bin/pip、/usr/local/bin/pip
可执行文件,它们可能是不同的安装路径,并且通常意味着这两者之间存在不同的安装方式或来源。)安装的版本,通常是由系统默认提供的稳定版本。版本,最好确保你明确使用的是哪个版本来管理 Python 包,以避免混乱。或其他 Python 包,它可能会覆盖系统级的安装,并将新的。等),不同的 Python 环境可能会安装不同版本的。通常会较旧,因为它是由操作系统维护的,不会自动升级。版本,这样就会导致系统中同时存在两个版本的。从你提供的输出来看,你系统中确实有两个。创建虚拟环境的时候,默认是用的。原创 2024-12-01 08:00:00 · 907 阅读 · 0 评论
分享