我的项目可以远程运行python函数。这样做需要传输给定功能所利用的模块。确定要发送的内容是通过修改后的Modulefinder进行的。
当我修改modulefinder以支持任意path_hooks时,我开始感到path_hooks并不那么受欢迎。快速的Google代码搜索似乎仅显示使用它们的ZipImporter。我注意到一个较小的项目正在使用它(即使那样,它的加载器也不支持get_code的PEP 302扩展,这是修改后的modulefinder所需要的)。
是否有人遇到或创建了使用自定义path_hooks访问源代码的项目?
最佳答案
是的,我已经编码了一些路径挂钩(出于显而易见的目的之一:访问位于文件系统和zipfile之外其他形式的存储模块中的模块),但是从来没有在开源项目中使用(实际上从不需要在其中支持modulefinder) )。您遇到什么困难?虽然我不能共享自己的原始代码,但我想我可以共享它所开发的专有技术(尽管我暂时不记得任何特殊的困难-已经有一段时间了)。至于“流行”,我想它们将与在“其他地方”(例如某种形式的数据库)的站点模块的需求成正比,尽管当然会构建通用的“用户模式文件系统”,例如。使用fuse,macfuse和dokan也可能允许这样做(并在通用性方面提供其他优势-不确定性能如何比较)。
关于python - 路径 Hook 的流行性(PEP 302定制导入),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1845251/