虽然在brightway2中指定自定义数据目录不是标准,但有些人可能仍需要这样做。一种方法是将BRIGHTWAY_DIR路径变量设置为此自定义目录(请参阅此处:https://docs.brightwaylca.org/faq.html#setting-brightway2-dir-in-a-virtual-environment),但这需要在执行python脚本之前发生。
所以不要事先设置这样的目录路径(例如Windows): 设置BRIGHTWAY2_DIR = C:/.../ MyDataDirectory
是否还可以在python中设置/更改brightway目录?
答案 0 :(得分:0)
试试这个:
import os
from brightway2 import projects
from bw2data.project import ProjectDataset, create_database
def switch_directory(dirpath):
assert os.path.isdir(dirpath)
projects._base_data_dir = dirpath
projects._base_logs_dir = os.path.join(dirpath, "logs")
os.mkdir(projects._base_logs_dir)
projects.db.close()
projects.db = create_database(
os.path.join(projects._base_data_dir, "projects.db"),
[ProjectDataset]
)
projects.set_current("default")
它使用与test runner基本相同的框架。