![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python高级语法
love_521_
这个作者很懒,什么都没留下…
展开
-
钉钉消息异常通知
【代码】钉钉消息异常通知。原创 2024-07-05 15:30:48 · 295 阅读 · 0 评论 -
Python深度解析:functools.lru_cache装饰器
functools.lru_cache是Python标准库中的一个装饰器,用于添加缓存功能。LRU代表最近最少使用,这意味着该缓存会保留最近使用的数据,而丢弃最长时间未使用的数据。# ...原创 2023-12-28 16:26:12 · 719 阅读 · 0 评论 -
还在傻傻的自己去造轮子?python提供为你提供了强大的重试库 Tenacity
Tenacity 是一个 Python 库,旨在简化添加重试逻辑的过程。它提供了多种灵活的方式来定义重试策略,并且可以轻松地集成到现有的代码中。无论是处理网络请求、数据库连接还是外部服务调用,Tenacity 都能够帮助我们实现更加健壮的应用程序。Tenacity 是一个强大且灵活的工具,可以帮助我们轻松地为 Python 应用程序添加可靠的重试逻辑。无论是处理网络请求、外部服务调用还是其他类型的操作,Tenacity 都能够帮助我们处理失败和不稳定的情况,让我们的应用程序更加健壮和可靠。原创 2023-12-28 16:09:31 · 477 阅读 · 0 评论 -
深入了解 Python 列表:操作、实现原理与应用场景
Python 的列表是动态数组的实现,其底层结构是一个指向元素的指针数组。当列表长度超过当前分配的空间时,系统会重新分配更大的空间,并将原有元素复制到新的位置。Python 中的列表(List)是一种灵活且强大的数据结构,用于存储有序的元素集合。Python 列表的添加和删除操作的特点使其在实际应用中更加灵活和适用,开发者可以根据需求选择合适的方法,同时通过深入理解底层实现原理更好地优化代码性能。同时,Python 的列表支持任意类型的元素,这是通过在数组中存储指向对象的指针来实现的。原创 2023-11-27 20:02:31 · 537 阅读 · 1 评论 -
Python中元组的不变性与包含可变列表的矛盾之美
Python中元组的不可变性与包含可变列表的设计,展现了一种巧妙的平衡,允许程序员在需要不可变性的同时保持一定的灵活性。然而,有趣的是,元组内部可以包含可变的列表。例如,考虑一个包含元组的列表,每个元组代表一个学生的信息,而每个元组中的第二个元素是一个列表,包含该学生的课程列表。然而,Python的设计者们并没有将元组的不可变性推而广之,而是为元组提供了一种灵活性,即允许元组内包含可变的列表。这意味着,尽管元组本身不可变,但如果元组的元素是可变的,那么这些元素的内容是可以被修改的。原创 2023-11-27 19:49:46 · 471 阅读 · 1 评论 -
Python 中的装饰器:优雅而强大的代码增强工具
通过本文的介绍,我们深入了解了 Python 中装饰器的概念和基本用法,并通过实际例子展示了装饰器在日志记录、权限控制等方面的应用。在使用装饰器时,要注意保持代码的简洁和可读性,避免过度使用,以免降低代码的可维护性。在实际项目中,合理利用装饰器可以提高代码的模块化和灵活性,同时确保代码的清晰和可维护性。本文将深入探讨装饰器的概念、用法,并通过实际例子演示如何利用装饰器提升代码的可读性、可维护性以及性能。实际上,装饰器引入的开销很小,而且通过使用一些优化技巧,可以使装饰器的性能几乎与原始函数一样。原创 2023-11-24 13:54:02 · 399 阅读 · 0 评论 -
Python 多线程环境下使用文件锁实现资源安全访问
通过使用文件锁,我们能够在多线程环境下实现对共享资源的安全访问。在多线程或多进程的环境中,对共享资源的访问需要谨慎处理,以避免竞态条件和数据不一致的问题。本文将介绍如何使用 Python 中的文件锁(fcntl 模块)来实现多线程环境下对共享资源的安全访问。文件锁是一种用于控制对文件或资源访问的机制,它确保在同一时刻只有一个线程或进程能够执行关键代码段。在这个类中,我们使用了 fcntl.flock 函数来实现对文件的加锁和解锁,同时使用了 threading.Lock 来确保对共享资源修改的线程安全性。原创 2023-11-23 17:50:02 · 502 阅读 · 0 评论 -
python进阶之python闭包的延迟绑定
python 函数延迟及其解决办法原创 2022-11-25 11:10:50 · 251 阅读 · 0 评论 -
django models 数据库 update_or_create 更新或者插入
在Django 项目中我们想要实现一个功能,当数据存在时就更新数据,当数据不存在时,就进行创建,update_or_create 方法可以满足我们的要求,但是要理解它,不能盲目的应用到项目中。数据新增了一条,并没有对原数据进行更新,显然不是我们想要的结果。...原创 2022-08-29 12:04:56 · 1668 阅读 · 0 评论 -
mysql数据库备份恢复及执行多个sql文件方法
当我们根据需要执行结束后,会生成相应的sql文件 ,单个回复比较简单,首先进入数据库,根据下方命令操作即可。此时会生成一个batch.sql 文件,打开后删除最后两条我们不需要的记录。等待执行完毕即可完成数据库恢复。那如果多个文件怎么办呢?...原创 2022-08-25 17:47:26 · 940 阅读 · 0 评论 -
一种简单方法--确定字典是否发生变化
一种简单方法--确定字典是否发生变化。原创 2022-07-20 10:58:46 · 384 阅读 · 0 评论 -
nginx源码部署
nginx 源码安装解压缩安装如果缺少依赖会出现报错解决error: the HTTP rewrite module requires the PCRE library编译并安装nginx原创 2022-06-24 11:36:19 · 565 阅读 · 2 评论 -
git子仓库管理使用(添加子仓库,删除子仓库,更新子仓库)
背景项目中经常使用别人维护的模块,在git中使用子模块的功能能够大大提高开发效率。使用子模块后,不必负责子模块的维护,只需要在必要的时候同步更新子模块即可。例如一个使用了子仓库的代码库,如何获取其子仓库内容呢?git clone git@github.com:maomaocn/git_submodule.gitcd git_submodule/git submodule initgit submodule update如黑新增一个子仓库呢?git submodule add git@g原创 2022-05-12 19:42:52 · 6802 阅读 · 0 评论 -
给 Python 字典加上点语法,实现 对象.属性 调用
class dict(dict): def __new__(cls, *args, **kwargs): return super().__new__(cls) def __getattr__(self, name): if name.startswith('__'): raise AttributeError return self.get(name) def __setattr__(self, name,原创 2022-03-30 16:11:21 · 1169 阅读 · 0 评论 -
类和对象的一些BIF
issubclass #用于判断自己的子类issubclass(A,B) #A是不是B的子类,是返回True 否则 False 自身也属于自己的子类isinstance(object,classinfo) #用于检查一个实例对象是否属于一个类 classinfo 可以传入一个元组class A(object): passclass B(A): passclass C(object): passa=A()b=B()isinstance(a,A) -->Trueis原创 2022-03-24 20:57:09 · 356 阅读 · 0 评论 -
Python高级语法map与filter
Map() 是一种内置的 Python 函数,它可以将函数应用于各种数据结构中的元素,如列表或字典。对于这种运算来说,这是一种非常干净而且可读的执行方式。numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]print(list(map(lambda x: x if x % 2 == 0 else 0, numbers)))‘’’[0, 2, 0, 4, 0, 6, 0, 8, 0, 10, 0, 12, 0, 14, 0]原创 2022-03-07 15:35:52 · 471 阅读 · 0 评论