标签: pth

使用 ._pth 时,脚本目录不包含在 sys.path 中

我正在尝试解决一个与在我编写的 Python 脚本中导入模块相关的奇怪问题。实现该模块的文件与主 Python 脚本位于同一目录中。

当我使用 ActivePython 时,Python 脚本运行良好。但是,当我使用嵌入式分发时,出现以下错误。

ModuleNotFoundError: No module named 'pyWhich'
Run Code Online (Sandbox Code Playgroud)

我已经将行为的差异追溯到 sys.path veritable 在 Embedded Distribution 中的设置方式。

在 ActivePython(我的脚本运行的环境)中,sys.path 中的第一个条目是包含脚本的目录。在嵌入式分发中,没有包含脚本的目录条目。

Embedded Distribution 使用 _pth 文件来设置 sys.path。我正在使用默认的 ._pth 文件,为了您的方便,我将其包含在下面。

python36.zip
.

# Uncomment to run site.main() automatically
#import site
Run Code Online (Sandbox Code Playgroud)

我的问题是,我需要在我的 _pth 文件中添加什么神奇的咒语来告诉 Python请将包含我在 sys.path 中运行的任何脚本的目录放入这样我的脚本将与嵌入式分发一起使用。路径配置文件的文档似乎不包含此信息。

python pth

7
推荐指数
1
解决办法
387
查看次数

使用 .pth 文件进行 Python 打包

我有一套一起开发并捆绑到一个分发包中的软件包。

为了便于讨论,我们假设我有充分的理由按以下方式组织我的 python 发行包:

SpanishInqProject/
|---SpanishInq/
|     |- weapons/
|     |   |- __init__.py
|     |   |- fear.py
|     |   |- surprise.py    
|     |- expectations/
|     |   |- __init__.py
|     |   |- noone.py
|     |- characters/
|         |- __init__.py
|         |- biggles.py
|         |- cardinal.py
|- tests/
|- setup.py
|- spanish_inq.pth
Run Code Online (Sandbox Code Playgroud)

spanish_inq.pth我已经添加了要添加SpanishInq到 的路径配置文件sys.path,因此我可以直接导入weapons, .etc 。

我希望能够使用 setuptools 构建轮子并在目录中安装 pip install ,但weapons不创建或命名空间。expectationscharactersSpanishInqSpanishInq

我的设置.py:

  from setuptools import setup, …
Run Code Online (Sandbox Code Playgroud)

python setuptools python-2.7 pth python-packaging

5
推荐指数
1
解决办法
2559
查看次数

如何加载 ONNX 文件并使用它在 PyTorch 中进行机器学习预测?

下面是源代码,我用它来加载.pth文件并进行多类图像分类预测。

model = Classifier()    # The Model Class.
model.load_state_dict(torch.load('<PTH-FILE-HERE>.pth'))
model = model.to(device)
model.eval()
Run Code Online (Sandbox Code Playgroud)
# prediction function to test images
def predict(img_path):
    image = Image.open(img_path)
    resize = transforms.Compose(
                    [ transforms.Resize((256,256)), transforms.ToTensor()])             
    image = resize(image)
    image = image.to(device)
    y_result = model(image.unsqueeze(0))
    result_idx = y_result.argmax(dim=1)
    print(result_idx)
Run Code Online (Sandbox Code Playgroud)

.pth使用 将该文件转换为 ONNX 文件torch.onnx.export

现在,如何单独使用 ONNX 文件而不使用该.pth文件来编写与上述类似的预测脚本?可以这样做吗?

pth pytorch onnx

3
推荐指数
1
解决办法
6576
查看次数

标签 统计

pth ×3

python ×2

onnx ×1

python-2.7 ×1

python-packaging ×1

pytorch ×1

setuptools ×1