我需要一个单独的Python代码,在这里我可以定义default.py文件,这些文件必须在项目开始时创建,这取决于我想要的模型。因此,当我开始一个新的项目时,我不必从另一个项目复制代码和调整类名等。因此,我想自动创建一个model_1.py作为:
class Model1(object):
code
一个型号为2.py:
^{pr2}$我希望从另一个文件创建这些文件,在那里我定义必须创建哪些模型。例如:
models = ['Model1', 'Model2']
是否可以将类名作为变量?比如说:
class models[0]()
此外,进口部分是否可能有类似的情况?所以
from model_type_x.test import *
其中,model_type_x是一个变量?在
还有其他的可能性吗?让Python创建一个文本文件并将其转换为.py文件?在
您需要名为cookiecutter的this模块。您可以为项目创建模板,并在创建项目的提示下对其进行配置
首先,python文件只是文本文件。您只需使用
.py
扩展名来保存它们。在您要实现的目标或多或少超出了python的范围。Python本身不生成代码。如果要生成代码,可以使用任何语言的模板。这并不重要,因为代码不会被执行。在
类名和导入名不能是变量。允许您定义这些语法或代码类型。在
如果要使用变量名导入,可以按如下方式导入模块:
其中module_name是一个变量,因此如果您可以猜测如何调用或将如何导入模块,则可以使用此变量在运行时导入模块。。。尽管有可能这样做,但我不建议使用这种方法,因为那样做很难看,而且几乎没有用,因为我们通常事先知道要导入的是什么。您可以始终使用“*”但这也不是一个特别好的主意,因为模块中的某些内容不会导出,通常最好明确地告诉您要导入的内容。在
^{pr2}$这显然是不可能的,关键字类是用来定义类型的。另一方面,你可以做的是:
但是访问
locals()
来定义一个局部变量,使用type
构造函数来手动定义一个新类型,而不是使用class
关键字,这样可以更容易地阅读。。。没有别的办法了。在真正的问题是。。。你想达到什么目的?很可能你没有在寻找一个你不存在的问题的正确解决方案。在
相关问题 更多 >
编程相关推荐