你好,我已经阅读了有关将反斜杠转换为正斜杠的文章。但是解决方法是使用原始字符串。
但是,在我的情况下存在问题:
我将动态获取文件路径并存储到变量var = 'C:\ dummy_folder \ a.txt'中。在这种情况下,我需要将其转换为正斜杠。但是由于'\ a'的存在,我无法将其转换为正斜杠。
如何转换它?或者我应该如何更改此字符串以使其成为原始字符串,以便我可以将其更改为正斜杠。
>>> var=r'C:\dummy_folder\a.txt'
>>> var.replace('\\', '/')
'C:/dummy_folder/a.txt'
但是,还是别这么做。只需使用os.path并快乐吧!
还有 os.path.normpath()函数,它根据本地操作系统的不同来转换反斜杠和正斜杠。请查看这里以获取详细的使用信息。你可以这样使用它:
>>> string = r'C:/dummy_folder/a.txt'
>>> os.path.normpath(string)
'C:\dummy_folder\a.txt'
os.path.normpath
保留了正斜杠,如预期所示。在 Windows 下,斜杠被转换为反斜杠。 - fatuhoku原始字符串用于字符串字面值(直接在源文件中编写的),这似乎不是这种情况。无论如何,正斜杠不是特殊字符 - 它们可以嵌入常规字符串中而不会出现问题。通常反斜杠具有字符串中的其他含义,需要进行“转义”,以便它们被解释为字面反斜杠。
要用正斜杠替换反斜杠:
# Python:
string = r'C:\dummy_folder\a.txt'
string = string.replace('\\', '/')
# Ruby:
string = 'C:\\dummy_folder\\a.txt'
string = string.gsub('\\', '/')
>>> 'C:\\dummy_folder\\a.txt'.replace('\\', '/')
'C:/dummy_folder/a.txt'
\
字符。
C:\path\to\file.txt
;然而,我想在git bash中运行一个命令,它应该是/c/path/to/file.txt
。 - Jake Berger