我必须在python中一起构建完整的路径.我试过这个:
filename= "myfile.odt"
subprocess.call(['C:\Program Files (x86)\LibreOffice 5\program\soffice.exe',
'--headless',
'--convert-to',
'pdf', '--outdir',
r'C:\Users\A\Desktop\Repo\',
r'C:\Users\A\Desktop\Repo\'+filename])
Run Code Online (Sandbox Code Playgroud)
但是我得到了这个错误
SyntaxError:扫描字符串文字时的EOL.
尝试:
import os
os.path.join('C:\Users\A\Desktop\Repo', filename)
Run Code Online (Sandbox Code Playgroud)
os模块包含许多用于目录和路径操作的有用方法
反斜杠字符 ( \) 必须在字符串文字中转义。
'\''\\'- 这是一个包含一个反斜杠的字符串因此,这是错误的:
'C:\Program Files (x86)\LibreOffice 5\program\soffice.exe'
Run Code Online (Sandbox Code Playgroud)
前缀为 的字符串文字r旨在更容易编写正则表达式。它们的功能之一是不必转义反斜杠字符。所以,这没问题:
r'C:\Program Files (x86)\LibreOffice 5\program\soffice.exe'
Run Code Online (Sandbox Code Playgroud)
但是,这不适用于以反斜杠结尾的字符串:
r'\' - 这是一个语法错误所以,这也是错误的:
r'C:\Users\A\Desktop\Repo\'
Run Code Online (Sandbox Code Playgroud)
所以,我会做以下事情:
import os
import subprocess
soffice = 'C:\\Program Files (x86)\\LibreOffice 5\\program\\soffice.exe'
outdir = 'C:\\Users\\A\\Desktop\\Repo\\'
full_path = os.path.join(outdir, filename)
subprocess.call([soffice,
'--headless',
'--convert-to', 'pdf',
'--outdir', outdir,
full_path])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18683 次 |
| 最近记录: |