我正在尝试通过openpyxl访问桌面上的excel文件。
我正在像这样创建load_workbook
的文件名:
import os
folderpath = r'C:\Users\SomeUser\Desktop'
add = 'Expense-Tracking ' + str(year) + '.xlsx' # year is 2019
filename = os.path.join(folderpath, add)
然后,当我尝试使用filename
加载工作簿时,出现此错误:
FileNotFoundError:[错误2]没有此类文件或目录:'C:\\ Users \\ SomeUser \\ Desktop \\ Expense-Tracking 2019.xlsx'
为什么将单斜杠更改为双斜杠,我该如何避免呢?
我期望的字符串是:
'C:\ Users \ SomeUser \ Desktop \ Expense-Tracking 2019.xlsx'
答案 0 :(得分:5)
当Python打印异常时,例如FileNotFoundError
,它显示对该异常调用repr()
的结果。此函数尝试以可以直接在源代码中输入的方式表示字符串,因此它会在路径字符串中转义反斜杠。您的原始字符串没有转义符,因为它是原始字符串文字(r"..."
),但这不是repr()
格式化字符串的方式。
绝对确保该文件存在该特定名称。