以编程方式生成requirements.txt文件

K E*_*gle 5 python subprocess pip requirements.txt

我正在尝试以编程方式生成requirements.txt文件.这样我可以将它与第二个.txt文件区分开来.到目前为止,我已经尝试了以下内容,但它们只向控制台输出要求(生成No .txt文件).

到目前为止我已经尝试过了

    import pip

    pip.main(["freeze",">","requirements.txt"])
Run Code Online (Sandbox Code Playgroud)

    from subprocess import call

    call(["pip","freeze", ">","requirements.txt"])
Run Code Online (Sandbox Code Playgroud)

如果我尝试在终端中手动运行相同的命令,则生成的文件没有问题.有什么建议?

Jan*_*sky 7

请求pip直接提供分发列表

脚本 myfreeze.py

import pip
with open("requirements.txt", "w") as f:
    for dist in pip.get_installed_distributions():
        req = dist.as_requirement()
        f.write(str(req) + "\n")
Run Code Online (Sandbox Code Playgroud)

然后,您将获得requirements.txt文件中的预期内容.