我为Windows编写了一个python程序。路径由文件夹名 + 文件名组成,其中文件名在每次迭代中都会更改。 文件夹地址始终相同,因此我将代码编写为:
path = "%s%s" % ("C:UsersMEraw_image", filename)
但是我注意到字符 \" 被认为是转义的,而且 \r 也有问题。我尝试了几件事,但无法弄清楚如何摆脱这个问题。
有什么想法吗?
您有两个选择。 使用原始字符串作为文件夹路径:
path = r"%s%s" % (r"C:UsersMEraw_image", filename)
或使用反斜杠转义反斜杠:
path = "%s%s" % ("C:\Users\ME\raw_image\", filename)
正如 @Erik-Sun 所指出的,使用原始字符串需要对尾随反斜杠进行特殊处理,即尝试r"C:UsersMEraw_image"
会导致语法错误,因为 Python 会将尾随反斜杠解释为双引号上的转义。
为了解决这个问题,我只是将最后一个反斜杠移动到未格式化的字符串r'%%'
。
在代码中使用\
而不是,如以下示例所示:
>>> print("C:\Users\Me\raw_image\")
C:UsersMeraw_image
您可以像这样添加另一个反斜杠:
path = "%s%s" % ("C:\Users\ME\raw_image\", filename)
我宁愿建议你使用 str.format(( 函数,因为这可以避免你"转义"反斜杠。
例如
>>> filename = "filename.txt"
>>> path = "C:\Users\Me\raw_image\{}".format(filename)
>>> print(path)
输出将为:
C:\Users\Me\raw_image\filename.txt