正确映射目录

Correctly mapping directories

我正在尝试将 t运行sfer 学习工具包上的培训模块添加到 运行,但似乎无法正确映射我的目录。我省略了之前在 os.environ 和路径名之间的等号。仍然是 return 的错误。我不确定我哪里出错了。

mport json
import os 
default_value = '~/LOCAL_PROJECT_DIR'
os.getenv('LOCAL_PROJECT_DIR', default_value)
mounts_file = os.path.expanduser("~/.tlt_mounts.json")

# Define the dictionary with the mapped drives
drive_map = {
    "Mounts": [
        # Mapping the data directory
        {
            "source": os.environ["/LOCAL_PROJECT_DIR/data"],
            "destination": "/workspace/tlt-experiments"
        },
        # Mapping the specs directory.
        {
            "source": os.environ["/LOCAL_PROJECT_DIR/files"],
            "destination": os.environ["/workspace/tlt-experiments/specs"]
        },
    ]
}

给出的错误:


KeyError Traceback(最后一次调用) 在 11 # 映射数据目录 12 { ---> 13“来源”:os.environ[“/LOCAL_PROJECT_DIR/data”], 14 “目的地”:“/workspace/tlt-experiments” 15 },

~/opt/anaconda3/lib/python3.8/os.py in getitem(self, key) 673 除了 KeyError: 674 # 使用原始键值引发 KeyError --> 675 从 None 引发 KeyError(key) 676returnself.decodevalue(值) 677

KeyError: '/LOCAL_PROJECT_DIR/data'

我的代码运行这次更新后顺利:

# Define the dictionary with the mapped drives
drive_map = {
    "Mounts": [
        # Mapping the data directory
        {
            "source": "/LOCAL_PROJECT_DIR/data",
            "destination": "/workspace/tlt-experiments"
        },
        # Mapping the specs directory.
        {
            "source": "/LOCAL_PROJECT_DIR/files",
            "destination": "/workspace/tlt-experiments/specs"
        },
    ]
}

谢谢大家!

这有点奇怪,因为错误谈论的是您的代码中不存在的一行 post。但是尝试在第 11 行用 "source": os.environ["LOCAL_PROJECT_DIR"] 替换 "source": os.environ="LOCAL_PROJECT_DIR"

更新: 你的新错误是环境变量不存在的结果。在这种情况下,你真的应该使用下面的并设置一个默认变量。

default_value = 'C:\Temp'
os.getenv('LOCAL_PROJECT_DIR', default_value)