Python标准库的发布部分
如何将Python中的一些标准模块与代码一起发布 我正在为Anki编写一个附加组件,为此我需要Python标准库的发布部分,python,anki,Python,Anki,如何将Python中的一些标准模块与代码一起发布 我正在为Anki编写一个附加组件,为此我需要Queue和threading模块,这些模块来自Python2.7标准库 当我尝试启动Anki时,我得到了ImportError:No module named Queue。我认为这是因为Anki没有提供完整的Python解释器,如果我缺少任何标准模块,我将自己绑定它们 安基: 标准模块 Anki仅附带运行程序所需的标准模块 -不包括Python的完整副本。因此,如果您需要使用Anki中未包含的标准模块
Queue
和threading
模块,这些模块来自Python2.7
标准库
当我尝试启动Anki时,我得到了ImportError:No module named Queue
。我认为这是因为Anki没有提供完整的Python解释器,如果我缺少任何标准模块,我将自己绑定它们
安基:
标准模块
Anki仅附带运行程序所需的标准模块
-不包括Python的完整副本。因此,如果您需要使用Anki中未包含的标准模块,则需要
将其与附加组件捆绑在一起
所以我的问题是:我应该采取什么步骤将标准Python模块线程化
和队列
与我的插件捆绑在一起
请注意,Anki中的附加组件只是Python脚本,具有某些额外的可用模块。来自Anki文档:
对于简单的单文件加载项,可以上载.py文件。对于多文件加载项,请创建一个充当Python包的子文件夹,并创建一个导入该包的小.py文件。以Japanese support插件为例,其结构如下所示:
japanese/file1.py
japanese/file2.py
japanese/__init__.py # can be empty; marks the folder as a package
japanese/<binary support files>
jp.py
japanese/file1.py
日语/file2.py
日语/_init__.py#可以为空;将文件夹标记为包
日文/
jp.py
要上载多文件加载项,请压缩文件夹和loader.py文件并上载压缩文件
可以是您想要的模块
如果您想了解其他人是如何做到这一点的,请在Github上签出和登录。来自Anki文档:
对于简单的单文件加载项,可以上载.py文件。对于多文件加载项,请创建一个充当Python包的子文件夹,并创建一个导入该包的小.py文件。以Japanese support插件为例,其结构如下所示:
japanese/file1.py
japanese/file2.py
japanese/__init__.py # can be empty; marks the folder as a package
japanese/<binary support files>
jp.py
japanese/file1.py
日语/file2.py
日语/_init__.py#可以为空;将文件夹标记为包
日文/
jp.py
要上载多文件加载项,请压缩文件夹和loader.py文件并上载压缩文件
可以是您想要的模块
如果您想了解其他人是如何操作的,请签出并在Github上进行操作。对于任何想知道如何导入.so文件的人(我正在使用一个库,它试图导入解析器,发现解析器是.so文件),答案是它与.py文件相同: 创建一个目录(
mkdir parser
),将.so文件复制到该目录(cp parser.cpython-37m-x86\u 64-linux-gnu.so parser/
),然后将\uu init\uuuuuuuuuuuuupy
添加到该目录中(触摸parser/\uuuuuu init\uuuuuuuuuuuupy
)
这几乎肯定不是跨平台的,但它满足了我的需要。对于任何想知道如何导入.so文件的人来说(我使用了一个库,它试图
导入解析器
,发现解析器。\uuu文件\uuu
是一个.so文件),答案是它与.py文件相同:
创建一个目录(mkdir parser
),将.so文件复制到该目录(cp parser.cpython-37m-x86\u 64-linux-gnu.so parser/
),然后将\uu init\uuuuuuuuuuuuupy
添加到该目录中(触摸parser/\uuuuuu init\uuuuuuuuuuuupy
)
这几乎肯定不是跨平台的,但它满足了我的需要。同样的问题,真的很令人沮丧。嘿,我的回答解决了你的问题吗?如果是这样,你能把我的解决方案标记为正确的吗?谢谢。同样的问题,真令人沮丧。嘿,我的回答解决了你的问题吗?如果是这样,你能把我的解决方案标记为正确的吗?谢谢