bbfreeze从编译库导入函数

2024-05-20 14:37:53 发布

您现在位置:Python中文网/ 问答频道 /正文

在带有bbfreeze的Raspbian上使用python2.7,我可以编译一个模块,然后将它导入另一个没有模糊处理的脚本吗?你知道吗

像这样:

bbfreeze mylibrary.py (that contain function())

然后:

>>> import mylibrary as p
>>> p.function()

如何做到这一点?你知道吗


Tags: 模块pyimport脚本thatasfunctioncontain
1条回答
网友
1楼 · 发布于 2024-05-20 14:37:53

此解决方案适用于Windows。我希望它,或者说是一个小的变体,可以在linux上运行,但是我没有访问linux的权限来尝试它。你知道吗

使用以下目录结构创建要冻结的应用程序:

  sample
      app
        - __init__.py
        - fns.py
    - main.py
    - setup.py

每个python文件的代码是:

fns.py公司

"""Place functions you want to access from the frozen app here"""
def accessible():
    print "This function is accessible"

主.py

import app.fns

def inaccessible():
    print "This function is inaccessible; AFAIK"

if __name__ == '__main__':
    inaccessible()
    app.fns.accessible()

bb级_设置.py

from bbfreeze import Freezer

f = Freezer(distdir="frozen")
f.addScript("main.py")
f()

冻结应用程序将导致目录冻结。您现在可以访问fns.py公司来自“冻结”应用程序,代码如下:

使用Frozencode.py

import sys

# Add the path to the frozen applications app module to the python path
sys.path.append("C:\\no_backup\\personal\\sample\\frozen\\library.zip")

import app.fns

if __name__ == '__main__':
    print "Calling a routine from a frozen application"
    app.fns.accessible()

我不知道如何调用主.py. 你知道吗

相关问题 更多 >