python中目前数据为一个类都存储在一个文件中,如何编写一端python程序使之成为四个类,分别储存于四个文件中?
时间: 2024-05-16 22:18:09 浏览: 11
假设现在我们有一个文件 `my_classes.py`,其中包含了四个类 `ClassA`、`ClassB`、`ClassC` 和 `ClassD`,现在我们需要将这四个类分别存储在四个不同的文件中。
我们可以先在项目根目录下创建四个空的文件,如 `class_a.py`、`class_b.py`、`class_c.py` 和 `class_d.py`,然后将每个类单独放在对应的文件中。
接下来,我们可以编写一个脚本,将 `my_classes.py` 中的类读取出来,然后分别写入到对应的文件中。具体代码如下:
```python
import inspect
# 读取 my_classes.py 中的所有类
with open('my_classes.py', 'r') as f:
classes = inspect.getmembers(__import__('my_classes'), inspect.isclass)
# 将每个类写入对应的文件中
for name, cls in classes:
with open(f'class_{name.lower()}.py', 'w') as f:
f.write(inspect.getsource(cls))
```
上面的代码中,我们使用了 `inspect` 模块中的 `getmembers` 和 `getsource` 函数来读取 `my_classes.py` 中的所有类,并将每个类的源代码写入到对应的文件中。
执行上面的代码后,你会发现项目根目录下多了四个文件,分别为 `class_a.py`、`class_b.py`、`class_c.py` 和 `class_d.py`,每个文件中都包含了对应的类的源代码。