我有一个字符串变量dirname
,其中包含带有正确斜杠(如果在Linux上则为“/”,如果在Windows上则为“\”)的路径。
我还有一个可能包含错误斜杠的相对文件名字符串。
如何使用pathlib将它们连接起来并获取在运行脚本的操作系统中的正确完整文件名?
例如,在Linux上运行:
dirname = '/users/myname/dir1'
filename1 = '..\\dir2\\file.txt'
filename2 = '../dir2/file.txt'
我希望将
dirname
和filename1
或filename2
连接起来,在两种情况下都获得/users/myname/dir2/file.txt
。在Windows上运行:dirname = 'C:\\dir1'
filename1 = '..\\dir2\\file.txt'
filename2 = '../dir2/file.txt'
我想要将dirname
与filename1
或filename2
连接起来,在两种情况下都得到C:\\dir2\\file.txt
。
os.path.join
吗? - sahasrara62os.path.join
时,我需要将斜杠替换为当前操作系统所需的正确斜杠,是吗?我想要一个与操作系统无关的解决方案。 - user2052436dirname
字符串,却不知道是否应该使用filename1
还是filename2
? - AMCdirname
作为命令行参数出现,因此它始终与操作系统正确匹配,文件名列在输入文件中,该文件可能来自Windows侧。 - user2052436