小编Lua*_*Lua的帖子

通过std :: system调用python时出错

当我尝试使用此方法在c ++中调用python时:

QString command = "cd C:\\python\\python37 && python C:\\projects\\file_editor.py" 
QByteArray ba = command.toLocal8Bit();
const char *c_str2 = ba.data();
std::system(c_str2)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Fatal Python error: initfsencoding: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'
Run Code Online (Sandbox Code Playgroud)

任何想法如何解决这一问题?

编辑: 我在PATH变量中与python相关的路径是:

C:\python\python37\Scripts

Run Code Online (Sandbox Code Playgroud)

我可以使用Qt,我也尝试过此操作:

Fatal Python error: initfsencoding: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'
Run Code Online (Sandbox Code Playgroud)

但是然后我得到这个错误:

QProcess: Destroyed while process ("python") is still running.
Run Code Online (Sandbox Code Playgroud)

c++ python qt cmd std

6
推荐指数
1
解决办法
176
查看次数

标签 统计

c++ ×1

cmd ×1

python ×1

qt ×1

std ×1