无论扩展名是什么原因,我都想导入纯文本文件作为python中的模块。
例如。我的程序的字符串放在单独的.py文件中,然后根据选择的语言,导入一个文件或另一个文件。
一切都很好用,但是,我想使这个文件对于普通用户来说显然不可读,因此,我想给他们一个自定义扩展名,它使已安装的任何程序都无法读取。
但是,由于import
仅适用于.py文件,因此我想知道是否有一种方法可以处理其他文件类型。
还是做这种事情的另一种方式。
谢谢。
答案 0 :(得分:1)
也许会读取文件源并使用eval方法?
您可以将其用作
def import_module(filename):
with open(filename, 'r') as file:
file_contents = file.read()
module_object = exec(file_contents)
return module_object
但是该变体并不安全!
这样的问题在stackoverflow read it
中