Python 如何在Windows上一致地分割路径
在windows上构建路径时,我感到非常困惑:Python 如何在Windows上一致地分割路径,python,string,split,Python,String,Split,在windows上构建路径时,我感到非常困惑: HDF_OUTPUT = f'{__file__}'.split('\\') print(HDF_OUTPUT) HDF_OUTPUT = f'{__file__}'.split('/') print(HDF_OUTPUT) 输出: ['C:/Users/Artur/Desktop/tsfresh/file.py'] ['C:', 'Users', 'Artur', 'Desktop', 'tsfresh', 'file.py'] 在本例中
HDF_OUTPUT = f'{__file__}'.split('\\')
print(HDF_OUTPUT)
HDF_OUTPUT = f'{__file__}'.split('/')
print(HDF_OUTPUT)
输出:
['C:/Users/Artur/Desktop/tsfresh/file.py']
['C:', 'Users', 'Artur', 'Desktop', 'tsfresh', 'file.py']
在本例中,第二种方法有效,但并不总是这样。有时第一种方法导致右分割,有时第二种方法导致右分割。/
和\\
运算符似乎有问题
我想要这个分割:
['C:', 'Users', 'Artur', 'Desktop', 'tsfresh', 'file.py']
我如何在这方面保持一致性?有正确的路径处理方法吗?如今,处理路径的内置默认方法是通过库
从pathlib导入路径
p=Path(r'C:\mypath\to\my\file.txt')
印刷品(p.零件)
#('C:\\'、'mypath'、'to'、'my'、'file.txt')
Windows路径使用的是\
,而不是/
。即使程序使用正斜杠,发送到Win32 API的实际路径也使用反斜杠。正斜杠用于向命令提供参数如果知道字符串不包含参数,则可以使用使用两个字符拆分的正则表达式<代码>/在路径中无效,当我执行.split('\')
操作时,不会在名为123/456.txt的文件上绊倒。它甚至不起作用,因为它将)
转换为字符串。您忘了避开反斜杠