自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 Python 装饰器(Decorators)

记录函数执行时间检查用户权限缓存计算结果自动重试失败操作。

2025-03-28 20:50:43 370

原创 django orm的优缺点

Django ORM(对象关系映射)是 Django 框架的核心组件之一,它通过将数据库表映射为 Python 类,简化了数据库操作。以下是其优缺点总结:优点开发效率高用 Python 类定义数据模型,无需手写 SQL,自动生成数据库表结构。提供迁移工具(makemigrations/migrate),简化数据库模式变更。

2025-03-28 20:22:38 661

原创 g对象在flask中主要是用来实现什么

在Flask中,g对象(全称flask.g)是一个线程局部(thread-local)的临时存储对象,主要用于在单个请求的上下文(request context)中共享数据。它的核心作用是为同一请求的不同处理阶段(如中间件、视图函数、模板等)提供便捷的数据共享机制,同时保证不同请求之间的数据隔离。虽然g看似全局,但实际每个请求独立拥有自己的g对象,不同请求的数据互不干扰,解决了多线程/协程环境下的数据竞争问题。简单场景可直接传递参数;在请求开始时创建数据库连接并存入g.db,请求结束时关闭连接。

2025-03-26 20:58:07 349

原创 在学东西的时候,大脑为什么会欺骗自己学会了

记住:真正的学会,是当你不再依赖“感觉会了”,而是能证明自己“做到了”。元认知指“对思考的思考”,即评估自身学习状态的能力。当信息呈现方式简单流畅(如重复阅读、被动听讲)时,大脑误将“流畅感”等同于“掌握感”。在学习过程中,大脑“欺骗”自己以为已经学会的现象,通常与认知偏差、记忆机制和学习策略的局限性有关。大脑倾向于用最小能耗处理信息,可能过早终止深度学习,将表层记忆误判为掌握(进化机制:节省能量以应对突发情况)。方法:用实际成果检验学习效果(如“能独立完成一道题/用外语对话5分钟”),而非主观感觉。

2025-03-26 20:20:33 261

原创 from abc import ABC

from abc import ABC 是 Python 中用于导入抽象基类(Abstract Base Class,简称 ABC)的语句。结合 @abstractmethod 装饰器,抽象基类能够强制子类实现特定的方法。通过继承 ABC 类,可以定义一个抽象基类。抽象基类用于声明子类必须实现的接口(方法或属性),确保派生类遵循特定的设计规范。通过 from abc import ABC,开发者能够利用 Python 的抽象基类机制,构建更健壮、可扩展的代码结构。ABC 类:作为抽象基类的基类。

2025-03-21 08:54:32 177

原创 协程为什么不要用time.sleep()

协程依赖 await 挂起并让出控制权,而 time.sleep() 不会挂起协程,导致事件循环无法调度其他任务。time.sleep() 是同步阻塞调用,会暂停整个线程,导致事件循环无法处理其他任务,降低并发效率。应使用 asyncio.sleep(),它是非阻塞的,允许事件循环在等待期间处理其他任务。在协程中使用 time.sleep() 会导致阻塞,影响协程的并发性能。使用 asyncio.sleep(),以保持协程的非阻塞特性。避免使用 time.sleep(),因为它会阻塞事件循环。

2025-02-28 17:22:41 224

原创 解决依赖库和语言的版本更新适配工作量大的问题

在软件开发中,依赖库和语言的版本更新是不可避免的,但确实会带来一定的维护成本。如果每次升级版本都需要全面适配,工作量确实会非常大。使用 requirements.txt(Python)或 package.json(JavaScript)等文件明确指定依赖库的版本。例如,在 requirements.txt 中指定 numpy==1.21.0,而不是 numpy>=1.21.0,以避免自动升级到不兼容的版本。

2025-02-27 19:05:10 750

原创 python进程为什么比线程消耗大,线程又为什么比协程消耗大

在 Python 中,进程、线程和协程 是三种不同的并发编程模型,它们的资源消耗和性能特点各不相同。进程切换(上下文切换)需要保存和恢复整个进程的状态(如寄存器、内存映射等),开销较大。线程创建和切换的开销较小,因为线程共享进程的资源,只需保存和恢复线程的栈和寄存器状态。创建进程需要调用操作系统接口,分配独立的资源(如文件描述符、内存映射等),开销较大。协程的栈空间是动态分配的,通常只有几 KB,且可以复用,因此内存开销远小于线程。线程是抢占式调度,操作系统会强制切换线程,可能导致不必要的上下文切换。

2025-02-27 18:45:12 429

原创 为什么用match case 而不用if else

match-case 是 Python 3.10 引入的一种新的条件匹配语法,它与传统的 if-else 相比,在某些场景下更具优势。

2025-02-26 20:32:00 254

原创 __str__ 和 __repr__的区别

理想情况下,eval(repr(obj)) 应该能够重建对象(虽然不是强制要求)。当在交互式环境中直接输入对象时(如 Python REPL),也会调用。返回值应该是明确的、无歧义的字符串,通常包含对象的类型和关键信息。当使用 print(obj) 时,Python 会调用 obj.当使用 str(obj) 时,Python 也会调用 obj.当使用 repr(obj) 时,Python 会调用 obj.,print(obj) 和 str(obj) 也会调用。,以便在调试时能够清晰地了解对象的状态。

2025-02-25 18:34:19 291

原创 from flask_session import Session 为什么是Session(app)这么用?

在 Flask 中,from flask_session import Session 和 Session(app) 的用法是为了配置和使用 Flask-Session 扩展,将用户的会话(Session)数据存储到服务器端(如 Redis、数据库或文件系统),而不是默认的客户端 Cookie 中。Session(app) 是 Flask-Session 扩展的初始化方法,它会将 Flask 应用的默认 Session 机制替换为 Flask-Session 的实现。

2025-02-23 16:39:46 629

原创 怎么合并主从分支,要注意什么

在 Git 中合并主从分支(例如将 feature 分支合并到 main 分支)是一个常见操作。以下是具体步骤和注意事项:合并分支的步骤确保当前在 main 分支。确保 main 分支是最新的。将 feature 分支合并到 main 分支。打开冲突文件,找到冲突标记(<<<<<<<、=======、>>>>>>>)。修改文件,保留需要的代码。git commit如果解决了冲突,完成合并提交。将合并后的 main 分支推送到远程仓库。

2025-02-23 16:17:30 534

原创 git 常用功能

使用 git push origin <标签名> 推送标签到远程仓库。将文件添加到暂存区。在当前目录初始化一个新的 Git 仓库。从远程仓库拉取最新代码并合并到当前分支。将本地分支的更改推送到远程仓库。回退到指定提交,丢弃之后的更改。将暂存区的更改提交到本地仓库。撤销工作区中指定文件的更改。查看工作区和暂存区的状态。将指定分支合并到当前分支。将文件从暂存区移回工作区。查看工作区与暂存区的差异。查看远程仓库的所有分支。删除未跟踪的文件和目录。将远程仓库克隆到本地。临时保存工作区的更改。

2025-02-23 16:12:24 344

原创 怎么使用ajax实现局部刷新

AJAX(Asynchronous JavaScript and XML)允许网页在不重新加载的情况下与服务器通信,更新部分内容。document.getElementById(‘your-element-id’).innerHTML:更新指定元素内容。‘your-server-endpoint’:服务器 URL。xhr.responseText:服务器返回的数据。性能优化:避免频繁请求,考虑防抖或节流。通过这些步骤,你可以实现网页的局部刷新。xhr.status:检查请求状态。true:表示异步请求。

2025-02-23 16:00:24 417

原创 sqlclchery面对复杂的sql语句怎么办

面对复杂的SQL语句时,可以采取以下步骤来简化和解决问题:理解需求明确查询的目标,确保清楚需要获取哪些数据。分解查询将复杂查询拆分为多个简单部分,逐步构建最终结果。使用注释添加注释,解释每个部分的逻辑,便于理解和维护。逐步测试每完成一部分,就进行测试,确保其正确性。利用临时表或CTE使用临时表或CTE(Common Table Expressions)存储中间结果,简化查询。优化性能检查索引、避免不必要的子查询和JOIN操作,提升查询效率。使用工具。

2025-02-23 11:45:19 670

原创 FastAPI从0到1自学

3、更新要快速,目前这版尽量还是手写吧,虽然目前AI写资料特别快,但是第一个专栏还是尽量减少AI的依靠程度,之后再上马AI。1、由于在工作中需要接触使用到FastAPI,因为决定就这个新内容写一个自己的专栏,从0到1,2、主要目标是尽量将资料写的详尽,然后最好是能代入我自己的思考,和一些成果。4、想到更多的再更新。

2025-02-20 17:16:49 105

原创 【无标题】

最后建议:制定每日计划(如2小时刷题+1小时项目复盘),保持技术敏感度,选择与职业规划匹配的岗位。跳槽不仅是薪资提升,更是技术成长的机会。关键词:突出“Python”、“Django/Flask”、“MySQL/Redis”、“分布式系统”等。扩展技能树:学习Go语言、云原生(Docker/K8s)、消息队列(Kafka)。技术社区:V2EX、GitHub Jobs、LinkedIn。技术影响力:参与技术大会(PyCon)、持续更新GitHub。Python:深拷贝vs浅拷贝、GC原理、协程与多线程区别。

2025-02-18 19:04:34 408

原创 时间复杂度和空间复杂度

空间复杂度(Space Complexity)是衡量算法在执行过程中所需的存储空间的度量。时间复杂度(Time Complexity)是衡量算法执行时间随输入规模增长而增长的度量。它表示了算法解决问题所需的时间量级。在分析算法的时间复杂度和空间复杂度时,我们通常关注最坏情况下的复杂度。这是因为最坏情况下的复杂度反映了算法在处理最具挑战性的输入时的性能。理解和分析算法的时间复杂度和空间复杂度能够帮助我们选择合适的算法来解决问题,并优化算法以提高性能。时间复杂度和空间复杂度是用来评估算法性能的两个重要指标。

2024-01-14 21:28:26 667

原创 伪装用户代理:了解Python库fake_useragent

fake_useragentfake_useragentfake_useragentfake_useragent

2024-01-08 09:33:50 848

原创 自学路上的绊脚石---没有方向

7.当然,前端的东西就更多了,javascript,css,jquery html bootstrap vue等等,都是我自己需要上手的东西,这些前端的东西我现在的熟悉程度就是简单的入门,我可以看懂一些不那么高级的玩法,而且,如果自己做页面的话,前端的东西还是比较重要的,就像博客系统,然后包括Kanban等东西,都需要有良好的前端知识作为铺垫。不忘初心才能方得始终。还有好多的小技术吧,异步,并发,数据库,数据结构,做题,自动化,devops,docker, k8s这些每一个小点都是让人头秃的环节啊。

2024-01-03 22:10:58 550 2

原创 ‘mongo‘不是内部或外部命令,也不是可运行的程序或批处理文件

1、这种首先要检查一下是不是没有配置环境变量,如果没有配置好系统环境变量的话,就去参考一下其他的博文设置一下环境变量。2、如果设置了环境变量发现还是有问题的话,那你装的是不是mongodb 7版本,重新安装5版本就好了。

2024-01-02 15:12:51 1499

原创 Django5.0发布

我就更新一篇Django5.0的更新分析。

2023-12-19 17:20:28 885

原创 记录一次云服务器被攻击事件

然后经过曲折的摸索,最终发现是我大意了,我为了图省事,我允许了root用户直接登录,然后有一些黑客部署的扫描程序扫到了我这边,然后就不断地在钻,尝试密码之类的,所以导致我的服务器sshd服务爆满。今天去登录华为云平台的时候,发现服务器的cpu涨到了百分之九十九,这个也太不正常了,我自己就只部署了一个页面,怎么会飚这么高呢?然后我想删除这个用户,发现根本就没有办法删除,因为他一直占用着进程,就算进程杀掉,马上也会分配一个进程id给他。然后,我就去找原因,使用top命令,去查看到底是谁占用这么多的资源。

2023-12-19 17:16:07 461

原创 关于软件定制市场的前景

感悟:看到一个视频,摊主的工具定制的,定制的就高级,因此我在想,软件定制有没有市场呢?

2023-12-12 11:17:18 78

原创 数据结构和算法(重读)

这几天重新将数据结构和算法的视频内容再看了一次,这里面将列表,链表等内容讲的也比较透彻,也是收获满满1.在学习列表链表的时候,详细的讲解了链表和列表的实现方式,让我对python的数据结构有了更深一层次的认知,然后对于链表对象的一些增删改查方法,教程里面进行了一个复现,其实python的内置函数,python列表的方法函数应该都是这样实现的,这样激发了我的兴趣,以后遇到函数的时候,可以多去看看源码,这样才能真正的掌握这个函数2.对于堆和栈也有了更深认知,教程中也是复现了堆栈的实现方式,用链表来实现

2023-12-12 10:24:29 55

原创 实现流程图的过程总结

高开自己写组件的方向,我也去摸索了一下,我是纯后端,对于前端可以说是非常不熟悉,但是我还是咬着牙去看了下平台导入组件的方式,然后添加依赖啥的,然后我还去微信群,qq群问被人是不是实现过这种流程图的效果,有些说拓扑图,有些说用啥啥技术,然后我去看了该官网,但是还是不行,当时在这里的时候我想放弃了,因为放弃了没有啥成本,低代码平台实现不了的效果,我搞不出来领导也不会说什么,但是事情出现了转折,群里有一个人说他使用antv x6实现过,于是我就是x6的官网看了一下,确实是可以的,很符合效果。

2023-06-16 16:57:55 1438 1

原创 Snipaste工具推荐

注意:以下按键适用于 Windows 操作系统,对于 Mac 操作系统,需将 Ctrl 替换成 Cmd.Snipaste 不只是截图,善用贴图功能将帮助你提升工作效率!,是指将系统剪贴板中的内容转化成图片,然后作为窗口置顶显示。所以,能否贴出来、贴出来的是什么,取决于系统剪贴板中的内容。Snipaste 是一个简单但强大的。想更充分利用 Snipaste?工具,同时也可以执行。

2023-06-09 16:53:27 1121

原创 【Django新版本发布】【Django 4.2 发行说明】

【Django新版本发布】【挖坑贴】【Django新版本发布】【挖坑贴】【Django新版本发布】【挖坑贴】【Django新版本发布】【挖坑贴】【Django新版本发布】【挖坑贴】

2023-04-25 23:02:31 1687 1

原创 【容联云云通讯接口文档学习】

我们提供免费开发测试,【免费开发测试前,请先 注册 成为平台用户】。免费开发测试需要在"控制台—管理—号码管理—测试号码"绑定 测试号码。免费测试流程:注册 >> 绑定测试号 >> 开发测试。短信业务免费开发测试。

2023-04-25 23:01:04 166 1

原创 ORM,先挖坑,再填坑

先挖坑,再填坑先挖坑,再填坑先挖坑,再填坑先挖坑,再填坑先挖坑,再填坑。

2023-04-22 15:09:09 86

原创 mysql delete和truncate的区别

先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑先挖坑,后填坑。

2023-04-21 08:36:54 67

原创 【解决flask循环导入问题】

1.什么是循环导入2.为什么会产生循环导入3.循环导入要怎么解决

2023-04-21 00:36:37 365

原创 GPT平替 Claude,安装和使用方法

上一篇文章我们简单的介绍了一下claude,首次使用魔法之后,就可以一直使用。就非常nice现在介绍一下怎么安装更新:4-20日,claude已经暂停新用户的申请。

2023-04-20 06:42:11 1811 3

原创 玩树莓python其实很多人也用来搞硬件了

先挖一个坑,之后来填,有时间了一定玩玩树莓派。

2023-04-18 01:27:50 124

原创 AI新势力 claude,国内支持访问,跟我一起用起来吧

claude

2023-04-18 00:57:45 1355 4

原创 python 3.12即将上线

这次的发布改动的内容并不是很大,但是版本已经来到了3.12 龟叔说python2到python3已经够头痛了,因此不会再出python4。现在python3.12马上就要更新了,由于这次更新是笔者第一次跟踪新版本的发布,因此特此写一篇文章来记录一下。在该unittest模块中,删除了许多长期弃用的方法和类。根据PEP 623,删除了 unicode 对象的 C 实现的弃用wstr和成员。Python 3.12 的许多新功能仍在计划和编写中。许多其他旧的、损坏的和弃用的函数、类和方法已被删除。

2023-04-13 00:11:13 660

原创 chatgpt的使用

2023-04-05 13:27:03 65

原创 markdown编辑器的学习

markwodn

2023-02-26 14:14:27 57

原创 2023年上半年目标(不定期更新)

刷题

2023-02-26 13:17:39 79 2

原创 windows python kafka 初级使用

windows python kafka 初级使用

2022-10-03 16:15:34 830

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除