You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows环境下在Python中调用pdflatex编译.tex文件失败的问题排查与解决

Python调用pdflatex返回代码1且无PDF生成的问题解决

问题场景

我在Windows系统中尝试用Python脚本调用pdflatex编译.tex文件时遇到了奇怪的问题:

  • 直接在命令行执行pdflatex filename.tex,能正常编译生成PDF文件
  • 但在Python里用os.system("pdflatex filename.tex")调用时,控制台只输出返回码1,完全没有编译动作,也没有生成PDF
  • 我试过传入文件的完整路径,问题依旧
  • 换成subprocess.call(['pdflatex', 'filename.tex'])调用,同样返回1,没有任何效果
  • 之前看到有Mac用户在讨论帖里遇到过相同问题,但没找到解决方案

问题根源

后来我才发现,问题根本不在Python本身,而是出在我运行Python脚本的环境上:我一直是通过RStudio的reticulate包来执行脚本的——不管是用reticulate::source_python(filename)调用,还是在reticulate的REPL里逐行执行代码,都会触发这个调用失败的情况。

解决方案

找到原因后,解决起来就很简单了:

  • 直接在系统命令行(比如Windows的CMD或PowerShell)中运行你的Python脚本,执行python your_script.py即可正常调用pdflatex完成编译
  • 或者利用RStudio自带的终端窗口,在终端里直接运行Python脚本,也能绕开reticulate的环境限制,顺利完成编译

内容的提问来源于stack exchange,提问作者Alira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 18:42:42