os.path.join产生一个额外的正斜杠

时间:2015-02-09 13:57:22

标签: python python-2.7 os.path

我正在尝试根据变量run加入绝对路径和变量文件夹路径。但是,当我使用以下代码时,它会在字符串后插入正斜杠,这是我不需要的。如何在Folder_之后删除斜杠?

import os
currentwd = os.getcwd()
folder = '001'
run_folder = os.path.join(currentwd, 'Folder_', folder)
print run_folder

我使用此代码获得的输出是:

/home/xkr/Workspace/Folder_/001

1 个答案:

答案 0 :(得分:3)

您要求os.path.join()获取多个路径元素并加入它们。 正在完成其工作

不要使用os.path.join()来生成文件名;只使用串联:

run_folder = os.path.join(currentwd, 'Folder_' + folder)

或使用字符串格式;后者可以给你很好的功能,如自动填充整数:

folder = 1
run_folder = os.path.join(currentwd, 'Folder_{:03d}'.format(folder))

通过这种方式,您可以将folder增加到10或100,并且仍然具有正确的前导零数。

请注意,您不必使用os.getcwd();您也可以使用os.path.abspath(),它会根据当前工作目录创建相对路径绝对值:

run_folder = os.path.abspath('Folder_' + folder)