2024-04-25 05:12:45 发布
网友
我正在为python3编写一个回忆录装饰器。计划是在一个临时文件中pickle缓存,以节省多次执行的时间。在
如果包含修饰函数的文件发生了更改,则缓存将被删除,就像UuPyCache\中的.pyc文件一样。因此,我开始考虑通过将pickled缓存放在优pycache_uuu中来整理用户的项目目录。在这个目录中存储文件有副作用吗?是误导还是混淆?在
你要么。。。在
__memo__
你应该永远不要搞砸__pycache__的理由:
__pycache__
python3 -B myapp.py
你要么。。。在
__memo__
或其他东西:这将允许您在多个执行之间进行缓存。但是,您将“污染”应用程序的文件结构。在你应该永远不要搞砸
__pycache__
的理由:__pycache__
是CPython特有的。虽然很可能是您现在使用的实现,但是假设每个人都这样做并没有任何好的理由,这是不可移植的/安全的/好的实践。在__pycache__
是一个透明的优化,也就是说,没有人应该关心它是否存在。这是CPython团队的一个设计决定,因此您不应该回避它。在python3 -B myapp.py
,那么如果不存在__pycache__
,则不会创建它,否则将被忽略。在__pycache__
,原因有很多。至少我知道。在__pycache__
是一种错觉。目录完全可以被认为是“污染”。如果Python解释器已经污染了内容,那么为什么不能使用__memo__
?在相关问题 更多 >
编程相关推荐