使用反斜杠将字符串列表转换为正确的目录名称

时间:2017-03-16 15:58:25

标签: python list python-3.x backslash

我有一个包含空格的字符串列表。我想更改每个字符串,以便在空格之前有一个反斜杠,以便它们可以用作目录名称。有什么方法可以做到这一点,可能是列表理解还是什么?

代码较长的示例:

directories = []
for s in schools:
    words = s.split(' ')
    directory = '\\ '.join(words)
    directories.append(directory)

2 个答案:

答案 0 :(得分:2)

使用str.replace(),这比分割和重新加入效率更高。如果您有一个列表,列表推导可以对列表中的每个字符串执行此操作:

escaped = [s.replace(' ', r'\ ') for s in list_of_strings]

答案 1 :(得分:0)

您可以使用os.path.join,因为它返回支持跨平台的路径。这种方式是加入目录路径的首选方式

import os
directories = [os.path.join(s.split(' ')) for s in schools]