- 博客(248)
- 收藏
- 关注
原创 【Python】命令行工具实现监控ctrl+c与运行时长终止任务
本文介绍如何使用Python优雅处理Ctrl+C中断信号。通过signal模块捕获SIGINT信号,设置全局标志控制循环退出,同时支持命令行参数配置任务持续时间。代码包含信号处理器、参数解析、主循环逻辑和异常处理,确保程序在中断或超时后能执行清理操作。示例代码演示了如何实现可中断的长时间运行任务,适用于需要优雅退出的场景。
2025-08-06 16:02:57
296
原创 【go】map基础操作
Go语言中的map是高效的键值对集合,基于哈希表实现,支持快速插入、查找和删除。使用时需通过make或字面量初始化,键必须是可比较类型。常见操作包括赋值、取值(返回值和存在标志)、delete删除键值对,以及for-range遍历(无序)。注意map是引用类型且非线程安全,并发场景需加锁或用sync.Map。其特性适合需要快速查找的场景,但需注意键类型限制和无序性问题。示例展示了map的初始化、操作和并发安全注意事项。
2025-08-01 11:28:08
407
原创 【go】slice元素去重
本文介绍了Go语言中实现切片去重的五种方法:1) 利用map键唯一性去重(推荐,O(n)时间复杂度);2) 双重循环去重(适合小数据,O(n²));3) 先排序后遍历去重(O(n log n),会改变顺序);4) 使用第三方库(开发便捷);5) 对比表格分析各方法优缺点。推荐根据数据规模、性能需求和开发场景选择合适方法,其中map去重最通用高效,双重循环适合内存敏感的小数据,排序法适用于需要排序的场景,第三方库则适合快速开发。
2025-08-01 11:26:14
303
原创 【go】slice元素去重
本文介绍了Go语言中实现切片去重的五种方法:1) 利用map键唯一性去重(推荐,O(n)时间复杂度);2) 双重循环去重(适合小数据,O(n²));3) 先排序后遍历去重(O(n log n),会改变顺序);4) 使用第三方库(开发便捷);5) 对比表格分析各方法优缺点。推荐根据数据规模、性能需求和开发场景选择合适方法,其中map去重最通用高效,双重循环适合内存敏感的小数据,排序法适用于需要排序的场景,第三方库则适合快速开发。
2025-08-01 11:16:29
345
原创 【go】使用for...range对数组元素求和
本文介绍在Go中使用for range循环遍历数组求和的几种方法。包括基本用法(单维/多维数组求和)、注意事项(值拷贝问题、数组与切片区别)以及性能优化建议。示例代码演示了如何通过索引修改原数组、封装求和函数等实用技巧,并对比了不同场景下的推荐写法。for range在保证代码简洁性的同时,与传统的for循环性能相当,是Go语言推荐的遍历方式。
2025-08-01 10:47:46
281
原创 【go 】数组的多种初始化方式与操作
Go语言提供了多种数组初始化方式:1)使用var声明并零值初始化;2)声明时直接赋值;3)短变量声明简化初始化;4)部分初始化(未赋值元素为零值);5)...自动推断数组长度;6)指定索引位置初始化。这些方法可根据不同场景灵活选用,满足数组初始化的各种需求。
2025-08-01 10:24:22
218
原创 【Go】defer、panic 和 recover 等错误处理机制与实战示例
本文详细介绍了 Go 语言中的 defer、panic 和 recover 机制。defer 用于延迟执行函数,常用于资源释放和日志记录;panic 触发运行时异常,中断程序执行;recover 捕获异常,恢复程序流程。三者配合可实现错误处理和程序恢复,但建议优先使用 error 返回值进行显式错误处理。文章通过具体代码示例展示了它们的用法、执行顺序和最佳实践,包括资源清理、异常捕获等常见场景。
2025-08-01 09:52:22
375
原创 【go】switch用法梳理与总结
Go 语言的 switch 语句具有多种灵活用法:支持基本值匹配(类似其他语言)、无表达式模式(类似 if-else)、多条件匹配(逗号分隔)、fallthrough 穿透执行以及类型断言(x.(type))。相比 C/C++,Go 的 switch 默认不穿透,更安全清晰,适合处理多分支逻辑。通过表达式匹配、条件判断和类型检测等功能,switch 能有效替代复杂的 if-else 结构。
2025-08-01 09:47:22
343
原创 【go】goto使用示例
摘要:Go语言中的goto语句用于无条件跳转到当前函数的标签位置,适用于特定场景如跳出多层循环(示例演示了从嵌套循环跳出)和集中错误处理(将多个错误检查点统一处理)。但使用存在限制:不能跳过变量声明(否则编译错误)和跨函数跳转。虽然goto在特定情况下简洁有效,但建议优先使用结构化控制流(如break、defer和函数封装)。其特性总结为:语法简单(goto LABEL),主要用于流程控制,但需谨慎使用以避免代码可读性问题。
2025-08-01 09:45:06
304
原创 【go】for...range用法
Go语言的for循环是该语言唯一的循环结构,但功能强大且灵活。它支持传统三部分循环、类似while的循环形式以及无限循环。通过range关键字可遍历数组、切片、字符串和map等集合类型。循环控制语句break和continue可配合标签实现嵌套循环控制,使逻辑流程更加清晰。这种设计体现了Go语言"少即是多"的哲学,通过单一结构实现多种循环需求。
2025-08-01 09:42:59
249
原创 【go】 if条件控制语句
本文介绍了Go语言中if条件控制语句的多种用法,包括基本if语句、if-else结构、多条件判断、带初始化语句的if以及嵌套if。通过代码示例展示了每种结构的语法和实际应用,并强调了Go语言中if语句的特点:必须使用布尔表达式、花括号固定位置以及变量作用域限制。这些特性使Go的if语句既简洁又强大,有助于编写更健壮的代码逻辑。
2025-07-31 18:26:20
413
原创 【go】格式化的输入和输出
本文详细介绍Go语言的fmt包格式化输入输出功能。主要内容包括:1)格式化输出的三种方式(Print/Println/Printf)及常用占位符;2)格式化输入的Scan系列函数(Scan/Scanln/Scanf)使用方法;3)字符串格式化操作(Sscanf/Sprintf)。文中提供了完整的代码示例,展示如何实现控制台交互、字符串解析等常见操作。最后以表格形式总结了各类输入输出函数的功能特点,为开发者快速掌握Go语言格式化I/O提供了实用参考。
2025-07-31 18:24:57
386
原创 【go】格式化的输入和输出
本文详细介绍Go语言的fmt包格式化输入输出功能。主要内容包括:1)格式化输出的三种方式(Print/Println/Printf)及常用占位符;2)格式化输入的Scan系列函数(Scan/Scanln/Scanf)使用方法;3)字符串格式化操作(Sscanf/Sprintf)。文中提供了完整的代码示例,展示如何实现控制台交互、字符串解析等常见操作。最后以表格形式总结了各类输入输出函数的功能特点,为开发者快速掌握Go语言格式化I/O提供了实用参考。
2025-07-31 18:22:17
392
原创 【go】字符串操作
Go语言提供了丰富的字符串操作函数,主要包含在strings和strconv包中。本文介绍了常用字符串操作方法,包括获取长度、拼接(+和Join)、查找比较(Contains/Index)、修改替换(Replace/大小写转换)、分割合并(Split/Join)、类型转换(strconv包)以及中文字符处理(RuneCountInString)等。特别说明了UTF-8编码下处理中文字符的注意事项,并提供了字符串反转的实现示例。这些方法能有效满足日常开发中的字符串处理需求。
2025-07-31 18:21:29
715
原创 【go】字符串操作
Go语言提供了丰富的字符串操作函数,主要包含在strings和strconv包中。本文介绍了常用字符串操作方法,包括获取长度、拼接(+和Join)、查找比较(Contains/Index)、修改替换(Replace/大小写转换)、分割合并(Split/Join)、类型转换(strconv包)以及中文字符处理(RuneCountInString)等。特别说明了UTF-8编码下处理中文字符的注意事项,并提供了字符串反转的实现示例。这些方法能有效满足日常开发中的字符串处理需求。
2025-07-31 18:11:58
937
原创 【Python】 参数类型检验与装饰器结合实战
这篇文章展示了一个Python类型检查装饰器的实现。该装饰器通过get_type_hints获取函数参数类型注解,自动验证输入参数是否符合预期类型。当调用add(1,'aaa')时,由于第二个参数类型不符,装饰器会抛出TypeError,提示参数"y"应为int类型。该实现结合了参数类型检查与装饰器技术,为函数提供了运行时类型验证的能力。核心代码约30行,使用标准库inspect和typing模块实现类型检查功能。
2025-07-31 17:22:46
224
原创 【go】实现BMI计算小程序与GUI/WEB端实现
本文介绍了一个用Go语言实现的BMI计算器,计算公式为BMI=体重(kg)/身高²(m²)。程序通过控制台交互获取用户输入的体重和身高,进行数据校验后计算BMI值,并根据中国标准分类(偏瘦、正常、偏胖、肥胖)。代码包含完整错误处理,确保输入合理性。运行示例演示了输入70kg和1.75m身高时,输出BMI 22.86(正常)的计算过程。该程序可直接运行,适用于基础健康评估场景。
2025-07-30 10:03:26
300
原创 【go】语言的匿名变量如何定义与使用
Go语言中的匿名变量使用下划线_表示,主要用于忽略函数返回的多个值中的某些值。它不占用内存、不可读取,仅作为占位符使用,能避免未使用变量导致的编译错误。常见场景包括忽略函数返回值、循环或赋值中的不需要的值,以及读取文件时的部分返回值。匿名变量的使用是Go代码风格的重要组成部分,能提高代码清晰度,但需注意不能对其进行读取或取地址操作。
2025-07-29 09:33:25
695
原创 【linux】md5文件相似校验介绍与实战示例
文章摘要: 本文介绍Linux中MD5校验的多种方法及实用脚本。核心内容包括: 基础命令:使用md5sum或openssl生成文件MD5值,支持提取纯哈希或比对文件一致性。 实用脚本: 校验文件与预期MD5是否匹配; 比对两个文件内容是否相同; 批量生成目录文件的MD5清单并校验完整性。 集成工具:提供交互式菜单脚本md5tool.sh,支持生成清单、单文件校验、文件比对及批量校验功能。适用于文件防篡改、备份验证等场景,提升操作效率与安全性。 (字数:148)
2025-07-28 11:38:47
474
原创 【Python】FP-Growth算法应用
FP-Growth是一种高效的频繁项集挖掘算法,相比Apriori算法无需生成候选项集。它通过构建FP树数据结构直接挖掘频繁项集,只需两次数据库扫描:第一次统计项频数,第二次构建FP树。算法从FP树中递归挖掘条件模式基,提高了处理大规模数据集的效率。Python实现展示了FP树节点类和挖掘过程,适用于市场篮子分析、推荐系统等场景。FP-Growth的优势在于数据压缩存储、减少I/O操作和可扩展性,特别适合处理海量数据。
2025-07-22 11:05:27
272
原创 【Python】Apriori算法及其应用
摘要: Apriori算法是一种经典的频繁项集挖掘算法,通过逐层搜索和剪枝策略发现数据中的关联规则。其核心思想是"频繁项集的子集必为频繁",算法过程包括:生成候选项集、计算支持度筛选频繁项集、基于置信度生成关联规则。本文提供了Python实现代码,展示了从交易数据中挖掘频繁项集(如['牛奶','面包'])和关联规则(如"面包→牛奶")的完整过程,参数可调节最小支持度和置信度阈值以适应不同场景需求。
2025-07-22 11:00:52
319
原创 【Python 】dotenv 模块与用法介绍及Flask 集成用法示例
Python-dotenv 是一个用于管理环境变量的 Python 库,通过 .env 文件存储配置信息,实现敏感数据与代码分离。支持多环境配置、变量类型自动转换和嵌套引用,可与 Flask、Django 等框架无缝集成。使用时需安装 pip install python-dotenv,在项目根目录创建 .env 文件(格式为 KEY=VALUE),通过 load_dotenv() 加载并使用 os.getenv() 访问变量。高级功能包括路径指定、变量覆盖、类型验证和多环境部署。安全建议是避免提交 .en
2025-07-21 11:36:31
1011
原创 【python】pyinstaller打包后运行exe可执行文件出现报错:ImportError: cannot import name ‘tarfile‘ from ‘backports‘
ImportError: cannot import name 'tarfile' from 'backports'
2025-07-17 17:42:02
137
原创 【Fastapi】Token验证与Postman模拟测试
摘要 本文介绍了一个基于FastAPI的认证系统实现方案,包含用户登录、JWT Token生成与验证功能。系统采用OAuth2密码流模式,通过/login接口验证用户凭据并生成Token,客户端需在请求头携带Token访问受保护接口。实现特点包括:1) 使用passlib进行密码哈希验证;2) 设置白名单路径跳过认证;3) 通过中间件统一处理Token验证;4) 支持JWT过期时间配置。代码示例展示了完整的实现流程,包括用户模型、密码验证、Token生成与解码等核心功能,为FastAPI项目提供了一套完整的
2025-07-16 16:10:36
893
1
原创 【Python】三角形形状判断
输入三条边的长度,判断是否能组成一个三角形(任意两边之和大于第三边),并进一步判断:是等边三角形是等腰三角形是普通三角形否则输出“不合法的三角形”
2025-07-16 14:42:27
297
原创 【Python】Respx 模块介绍及用法
Respx 是一个专为 HTTPX 设计的 Python 模拟库,主要用于测试和开发环境中拦截 HTTP 请求。它提供请求模式匹配、响应模拟、请求验证等功能,支持延迟响应、动态响应等高级特性。通过装饰器或上下文管理器使用,Respx 能有效隔离测试环境与外部依赖,适用于单元测试、集成测试等多种场景。相比类似工具,Respx 针对 HTTPX 优化,提供更简洁的 API 和更丰富的功能,是 HTTPX 生态中的首选测试工具。
2025-07-15 10:51:36
1103
原创 【Python】列表嵌套字典多规则排序
本文展示了三种针对项目列表的自定义排序方法。1) 将"pro_615"和"pro_617"排在最前面;2) 将这两个项目排在最后面;3) 仅将"pro_615"排在末尾。每种方法都通过定义优先级规则和自定义排序函数实现,代码简洁明了。排序结果证明这些方法能有效满足不同场景的需求,为数据处理提供了灵活解决方案。
2025-07-07 14:25:35
358
原创 【python】实现2个字典根据key合并并按key排序,其中排序可以指定某几个key在前
python 实现2个字典根据key合并并按key排序,其中排序可以指定某几个key在前
2025-07-01 10:48:34
181
原创 【Echarts】公考行测题资料分析数据绘图代码实现
最近看上海公务员考试行测题目中有一组数据分析题,看着图怪怪的,突然想起来用echarts实现看看,发现难度并不大,
2025-06-25 10:13:17
151
原创 [前端]HTML模拟实现一个基于摄像头的手势识别交互页面
智能手语识别系统摘要: 该系统通过HTML实现了一个完整的手语识别界面,包含视频采集、识别处理和结果显示三大模块。系统功能包括:1)摄像头控制(开启/关闭/切换);2)手语识别(开始/停止按钮控制);3)识别结果显示(当前结果+历史记录);4)结果复制功能;5)用户设置(灵敏度、语言等配置)。界面采用三栏布局(视频区+结果区+状态栏),并实现了设置弹窗等交互功能。系统加载时会预先获取摄像头权限,提供从手语采集到文字输出的完整流程演示,虽然实际识别算法使用模拟数据实现,但展示了完整的功能逻辑和用户交互体验。
2025-06-12 14:44:12
1155
3
原创 【无标题】
本文展示了使用Python三大可视化库(Matplotlib、Seaborn、PyEcharts)绘制常见图表的方法。包括:Matplotlib的折线图和箱线图、Seaborn的散点图和热力图,以及PyEcharts的柱形图和词云图。每个图表都配有完整的代码示例和对应的可视化效果图,涵盖数据生成、图表绘制、样式设置等关键步骤。这些代码可直接运行,适合数据可视化初学者学习参考,帮助快速掌握不同库的图表绘制技巧。
2025-06-11 14:15:10
520
原创 【Python】tkinter实现番茄钟
摘要: 本文介绍了一个基于Python的番茄钟倒计时工具实现。使用tkinter库构建GUI界面,核心功能是通过输入时间进行倒计时显示,适合初学者学习。代码实现简单,包含时间输入框、启动按钮和倒计时显示,支持分钟和秒数两种计时模式(调试模式直接显示秒数)。当倒计时结束会弹出提示框,并自动重置界面。该工具无需第三方库,可本地直接运行,是一个3星难度的入门级实践项目。文章提供了完整源码和运行效果图,适合Python新手练习GUI开发和基本逻辑实现。
2025-06-04 14:27:50
232
Arduino面包板连线绘图软件
2023-06-02
D1 WIFI UNO开发板基础资料
2023-05-19
求职有道-python相关题目
2023-04-01
求职有道-linux&sql面试题
2023-04-01
求职有道-接口测试面试题
2023-04-01
求职有道-测试工程师面试题
2023-04-01
红葡萄酒winequality-red.csv数据集和白葡萄酒winequality-white.csv数据集
2024-07-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人