0

我正在尝试从字符串加载模块,但它也是一个.so文件。这有效:

import  imp
mod = imp.load_dynamic('module.name','path/to/my_module.so')
mod.function(x)

但我想从 Python 字符串加载模块。我尝试使用 read 方法创建一个自定义类并将其传入:

s = string_with_read('.so file text....')
mod = imp.load_dynamic('module.name',s)

但它告诉我TypeError: must be string, not instance。所以,它想要一个文件的路径。无论如何我可以制作一个假文件并将其传递给它吗?我愿意使用 python3 或更新的导入模块,importlib; imp只是看起来更容易。

这是string_with_read课程,尽管这种方法目前不起作用。

class string_with_read:
    def __init__(self,s):
        self.s = s
    def read(self):
        return self.s
    def readlines(self):
        return self.s.splitlines()
4

0 回答 0