如何在Python中检索点子要求(冻结)?

发布于 2021-01-29 16:54:10

我在git问题跟踪器上发布了这个问题:https :
//github.com/pypa/pip/issues/2969

我们能否以某种方式在python中调用pip冻结/列表,即没有shell上下文?

我希望能够导入pip并执行诸如requirements =
pip.freeze()之类的操作。调用pip.main([‘freeze’])会写入stdout,但不会返回str值。

关注者
0
被浏览
52
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    在较新版本(> 1.x)中有一个pip.operation.freeze:

    try:
        from pip._internal.operations import freeze
    except ImportError:  # pip < 10.0
        from pip.operations import freeze
    
    x = freeze.freeze()
    for p in x:
        print p
    

    输出是预期的:

    amqp == 1.4.6
    anyjson == 0.3.3
    台球== 3.3.0.20
    defusedxml == 0.4.1
    Django == 1.8.1
    django-picklefield == 0.3.1
    docutils == 0.12
    …等



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看