我正在尝试使用docx
包将一些数据写入word.docx文件。
尝试更改到保存目录时,出现错误。
我要保存的目录在“D”驱动器中名为“002200 - AAA”。
这是我的代码:
import os
from docx import Document
savePth = 'D:\previous folder\002200 - AAA\'
os.chdir(savePth)
但是python抱怨道:
savePth = 'D:\\previous folder\002200 - AAA\'
^
SyntaxError: EOL while scanning string literal
我知道\0
可能意味着NULL,所以无论如何我可以让python将我的文件保存到以数字命名的特定文件夹中吗?
答案 0 :(得分:4)
使用os.path.join
:
savePth = os.path.join('D:', 'previous folder', '002200 - AAA')
os.chdir(savePth)
然后您不必担心转义目录分隔符,实际上它将根据运行的操作系统自动处理特定于操作系统的分隔符。
答案 1 :(得分:2)
' \'是escape character,意味着它后面的符号被解释为字符串的一部分。因此,python认为你的字符串永远不会结束,因为它认为你的结尾撇号被转义(字符串的一部分)。逃避'逃避你的逃脱角色,试试这个:
from docx import Document
import os
savePth = 'D:\\previous folder\\002200 - AAA\\'
os.chdir(savePth)
答案 2 :(得分:1)
你的字符串无效
savePth = 'D:\\previous folder\\002200 - AAA\\'
会给你你想要的东西