使用反斜杠将字符串列表转换为正确的目录名称
Convert list of strings to proper directory names with backslash
我有一个包含空格的字符串列表。我想更改每个字符串,以便在空格之前有一个反斜杠,以便它们可以用作目录名称。执行此操作的捷径是什么,可能是列表理解之类的?
代码较长的示例:
directories = []
for s in schools:
words = s.split(' ')
directory = '\ '.join(words)
directories.append(directory)
使用str.replace()
,这将比分裂和重新加入更有效。如果你有一个列表,列表理解可以对列表中的每个字符串执行此操作:
escaped = [s.replace(' ', r'\ ') for s in list_of_strings]
您可以使用 os.path.join
因为它 return 支持跨平台的路径。这种方式是加入目录路径的首选方式
import os
directories = [os.path.join(s.split(' ')) for s in schools]
我有一个包含空格的字符串列表。我想更改每个字符串,以便在空格之前有一个反斜杠,以便它们可以用作目录名称。执行此操作的捷径是什么,可能是列表理解之类的?
代码较长的示例:
directories = []
for s in schools:
words = s.split(' ')
directory = '\ '.join(words)
directories.append(directory)
使用str.replace()
,这将比分裂和重新加入更有效。如果你有一个列表,列表理解可以对列表中的每个字符串执行此操作:
escaped = [s.replace(' ', r'\ ') for s in list_of_strings]
您可以使用 os.path.join
因为它 return 支持跨平台的路径。这种方式是加入目录路径的首选方式
import os
directories = [os.path.join(s.split(' ')) for s in schools]