如何将变量值传递给 xlsxwriter 中的文件命名字符串

dav*_*ork 2 python xlsxwriter

我试图从变量中获取值并将其传递到 xlsxwriter 文件名中。

这是我的代码:

company_code = 'XXX'
workbook = xlsxwriter.Workbook('Funddata_'+(company_code)+'_%s.xlsx' %timestr)
worksheet = workbook.add_worksheet()
Run Code Online (Sandbox Code Playgroud)

我得到的输出文件名是Funddata__201810.xlsx但我正在尝试获取Funddata_XXX_201810.xlsx

Phi*_*hil 6

您可以使用 % 格式,您已经尝试过这样做。

company_name = "XXX"
filename = 'Funddata_%s_%s.xlsx' % (company_name, timestr)
workbook = xlsxwriter.Workbook(filename)
Run Code Online (Sandbox Code Playgroud)

或者

如果您使用的是 python 3.6+,则可以使用 f 字符串。F 字符串允许您使用花括号将变量直接插入到字符串中

filename = f'Funddata_{company_name}_{timestr}.xlsx' # note f before opening quote
print(filename) # prints Funddata_XXX_201810.xlsx
Run Code Online (Sandbox Code Playgroud)