在 Python 中创建一个以变量而不是字符串开头的文件名

Creating a filename in Python that begins with a variable instead of a string of characters

我需要创建一个类似于 NAME_Forecast_DATE 的文件名,其中名称和日期是变量。 到目前为止我有这个 filename = r'C:\Users\USERNAME\Desktop\'+carrier +'_Forecast_'+date+'.xlsx'

问题是最后一个\导致+carrier+是一个字符串,_Forecast_是一个变量。 当文件名以变量开头时,如何将此文件名写入桌面?

使用\代替\

示例:

path = “C:\” + something + “\something”

你也可以使用 .format(),这是一种更好的格式化字符串的方法,但也要继续使用 \

对于这个特定的用例,使用 str.format() 方法可以让您以可读的方式查看字符串,而无需进行任何字符转义。

filename = r'C:\Users\USERNAME\Desktop\{}_Forecast_{}.xlsx'.format(carrier,date)

如果字符串末尾有一个“\”,则必须使用两个反斜杠对字符串进行转义并删除原始字符串前缀,正如@nagyl 所建议的那样。对于需要转义字符串处理的任何其他特殊字符也是如此:https://docs.python.org/3/reference/lexical_analysis.html#index-22