os.path.join(a,b)末尾出现\问题

文章目录

    • 问题描述
    • 解决

问题描述

config['save_path'] = 'dataset/data/output' 并且 config['model_name'] = ''(空字符串)
os.path.join() 函数在处理路径时会正确处理路径分隔符,并避免出现多余的斜杠。但是,如果 config[‘save_path’] 或者 config[‘model_name’] 的值中包含了意外的字符(如末尾的点“.”),则会导致输出
直接拼接的结果将是 'dataset/data/output\.pt'

解决

其根本原因就在于我的config[‘model_name’]为空字符,如果你的值允许修改,则直接改为非空便好
否则的话就直接干掉它:

if config['model_name']:
    checkpoint_path = os.path.join(config['save_path'], config['model_name'] + '.pt')
else:
    checkpoint_path = config['save_path'] + '.pt'

你可能感兴趣的:(python,ai,error(vs),linux,前端,数据库,python)