首页 > 解决方案 > 打开带有子进程的 Python 程序

问题描述

我正在尝试使用子进程在我的 Windows 计算机上打开一个 python 文件,但我无法使其工作。

import subprocess
subprocess.Popen('python C:\Users\Kristian\Desktop\Python\Ja\Bakkom var her.py',shell=True)

这是我的代码。当我运行它时,我的屏幕上会出现一个窗口,上面写着:

(unicode 错误)'unicodeescape' 编解码器无法解码位置 9-10 中的字节:截断 \UXXXXXXXX 转义

标签: pythonsubprocess

解决方案


这是Windows 的一个著名问题,因为它使用反斜杠而不是正向作为文件分隔符。Python 正在尝试将前面的文本\U(如在“用户”中)解析为 Unicode 字符,但事实并非如此。

您可以通过以下方式解决它:

  • 使用双斜杠 ( 'python C:\\Users\\Kristian\\Desktop\\Python\\Ja\\Bakkom var her.py')
  • 使用正斜杠 ( 'python C:/Users/Kristian/Desktop/Python/Ja/Bakkom var her.py')
  • 前置r以指示原始文本。( r'python C:\Users\Kristian\Desktop\Python\Ja\Bakkom var her.py')

推荐阅读