2014-06-20 24 views
5

मैं प्रोग्रामिंग रूप से एक info.txt फ़ाइल जेनरेट करने का प्रयास कर रहा हूं। इस तरह मैं इसे दूसरी .txt फ़ाइल के विरुद्ध अलग कर सकता हूं। अब तक मैंने निम्नलिखित कोशिश की है, लेकिन वे केवल कंसोल की आवश्यकताओं को आउटपुट करते हैं (नहीं .txt फ़ाइल जेनरेट की जाती है)।प्रोग्राम्सिक रूप से require.txt फ़ाइल उत्पन्न करें

अब तक मैं

import pip 

    pip.main(["freeze",">","requirements.txt"]) 

और

from subprocess import call 

    call(["pip","freeze", ">","requirements.txt"]) 

अगर मैं हालांकि टर्मिनल में मैन्युअल रूप से एक ही आदेश को चलाने के लिए प्रयास की कोशिश की है, फ़ाइल मुद्दे के बिना उत्पन्न होता है। कोई सुझाव?

उत्तर

6

पिप पूछो सीधे स्क्रिप्ट 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") 

तो फिर आप अपने requirements.txt फ़ाइल में की उम्मीद सामग्री प्राप्त वितरण

की सूची उपलब्ध कराने के लिए।

3
subprocess.Popen(['pip', 'freeze'], stdout=open('/tmp/pip.log', 'w')) 
संबंधित मुद्दे