我可以同时使用 "f" 格式化字符串和 "r" 查找文件吗?
Am I able to use "f" to format string and "r" to find files at the same time?
我有这段代码,我试图提示用户输入文件的路径,并且根据文件的标题,它会相应地重命名。这是我目前所拥有的:
import os
path = input('PATH: ')
if 'Factssheet' in path:
os.rename(path, #updated_name)
如果 Factssheet
出现在上一个标题中,我想将文件重命名为 Fact Sheet
。但是,我现在有两个问题。我知道您必须在指定路径之前添加“r”,我不确定为什么,但我想没关系。而且我认为我必须对其进行字符串格式化才能真正重命名它?老实说,我试过 rf"{path}"
但这不起作用。我也试过 r"%s" % path
但这对我来说也是不行的。
我是不是偏离轨道太远了?任何东西都将不胜感激。
可以这样使用rf"...your string.."
>>> path = "/this/is/a/path/"
>>> rf"{path}"
'/this/is/a/path/'
不需要使用原始或格式化的字符串,您可以直接写path
。
当您需要转义字符时,原始字符串很有用,例如,当您有一个路径时,它会有多个反斜杠。为了转义反斜杠,您必须使用双反斜杠 '\'
,但是使用 r 可以直接写 r'\'
。
我有这段代码,我试图提示用户输入文件的路径,并且根据文件的标题,它会相应地重命名。这是我目前所拥有的:
import os
path = input('PATH: ')
if 'Factssheet' in path:
os.rename(path, #updated_name)
如果 Factssheet
出现在上一个标题中,我想将文件重命名为 Fact Sheet
。但是,我现在有两个问题。我知道您必须在指定路径之前添加“r”,我不确定为什么,但我想没关系。而且我认为我必须对其进行字符串格式化才能真正重命名它?老实说,我试过 rf"{path}"
但这不起作用。我也试过 r"%s" % path
但这对我来说也是不行的。
我是不是偏离轨道太远了?任何东西都将不胜感激。
可以这样使用rf"...your string.."
>>> path = "/this/is/a/path/"
>>> rf"{path}"
'/this/is/a/path/'
不需要使用原始或格式化的字符串,您可以直接写path
。
当您需要转义字符时,原始字符串很有用,例如,当您有一个路径时,它会有多个反斜杠。为了转义反斜杠,您必须使用双反斜杠 '\'
,但是使用 r 可以直接写 r'\'
。