如何从 Python 脚本调用 clang-format

How to call clang-format from Python script

我有一个 Python 工具可以生成 C++ 文件。

为了测试该工具,我进行了一项测试,将生成的文件与预期的输出文件进行比较。

diff = difflib.unified_diff(expectedFile.readlines(), file.readlines(), expectedFilename, filename)

问题是由于格式不同,我发现了一些差异。

我可以 运行 clang-format 预期的输出文件。 我仍在尝试做的是在调用 difflib.unified_diff 之前对生成的文件进行 运行 clang-format。

任何人都可以帮助我如何在文件 Python 中 运行 clang-format 吗?

非常感谢!

您可以使用Python提供的call命令来调用外部命令。例如,您可以编写如下脚本:

#!/usr/bin/python
import sys
from subprocess import call
lc = ["clang-format","test.c"] # replace 'test.c' with the your filename.
retcode=call(lc)
sys.exit(retcode);