一个Python程序中有一个代码段。它运行良好。
if 'TV_DIR_RUNS' in os.environ:
os.environ['TV_DIR_RUNS'] = os.path.join(os.environ['TV_DIR_RUNS'],'Seg')
我试图通过添加os.environ['TV_DIR_RUNS']
函数来查看print
。
if 'TV_DIR_RUNS' in os.environ:
os.environ['TV_DIR_RUNS'] = os.path.join(os.environ['TV_DIR_RUNS'],'KittiSeg')
print(os.environ['TV_DIR_RUNS'])
然后运行该程序会生成以下错误消息
File "train.py", line 107, in main
print(os.environ['TV_DIR_RUNS'])
File "/devl/lib/python3.4/os.py", line 635, in __getitem__
raise KeyError(key) from None
KeyError: 'TV_DIR_RUNS'
这让我很困惑,因为在我看来os.environ['TV_DIR_RUNS'] = os.path.join(os.environ['TV_DIR_RUNS'],'KittiSeg')
可以成功执行,为什么不能打印出来?
答案 0 :(得分:0)
我想你会发现'TV_DIR_RUNS'
不在os.environ
。将您的行更改为print(os.environ.get('TV_DIR_RUNS'))
行os.environ['TV_DIR_RUNS'] = ...
位于if语句的块内,检查'TV_DIR_RUNS'
是否在os.environ
。