मान लें कि मेरे पास फ़ाइल है foo.py, और फ़ाइल के भीतर मैं एक फ़ाइल निष्पादित करना चाहता हूं bar.py। लेकिन, bar.py उसी निर्देशिका में नहीं है जैसे foo.py, यह उपनिर्देशिका कॉल बाज़ में है। execfile
काम करेगा? os.system
के बारे में क्या?एक पायथन फ़ाइल कैसे चलाएं किसी अन्य पायथन फ़ाइल से निर्देशिका में नहीं?
उत्तर
बस एक खाली __init__.py
baz
संकेत करने के लिए फ़ाइल जोड़ने के एक मॉड्यूल है और, foo.py
से कार्य करें:
from baz import bar
, जब तक निश्चित रूप से, आप एक मॉड्यूल में baz
बनाने के लिए नहीं है (और execfile का उपयोग एक अच्छा कारण है)।
प्रश्न का तात्पर्य है कि आप इन्हें स्क्रिप्ट के रूप में चलाने के लिए चाहते हैं, इसलिए हाँ: आप 2.X या subprocess में निष्पादन का उपयोग कर सकते हैं (दुभाषिया को कॉल करें और स्क्रिप्ट को तर्क के रूप में पास करें)। आपको बस फाइलों को पूर्ण पथ प्रदान करने की आवश्यकता है।
# Python 2.X only!
execfile ('c:/python/scripts/foo/baz/baz.py')
यह सचमुच भंगुर है। baz हमेशा foo की एक subirectory है, तो आप foo के फ़ाइल से यह प्राप्त हो सकता है:
baz_dir = os.path.join(os.path.dirname(__file__), "baz")
baz_file = os.path.join(baz_dir, "baz.py")
execfile(baz_file)
दोनों फ़ाइलों स्थान जो आपके अजगर द्वारा देखा जा सकता है तो - यानी, फ़ोल्डरों sys.path में हैं या कर दिया गया है site का उपयोग करके खोज पथ में जोड़ा गया है, आप foo से baz आयात कर सकते हैं और इसके कार्यों को सीधे कॉल कर सकते हैं। यदि आपको वास्तव में किसी कार्रवाई को ट्रिगर करने की बजाए बाज़ से जानकारी पर कार्य करने की आवश्यकता है, तो यह जाने का एक बेहतर तरीका है। As long as there is an init.py in each folder तुम सिर्फ रन टाइम के दौरान पथ जोड़कर
import baz
baz.do_a_function_defined_in_baz()
आयात sys परिवर्तन "sys.path" कर सकता है, तो मॉड्यूल में मदद मिलेगी आयात
- 1. निर्देशिका में सभी पायथन फ़ाइलों को चलाएं
- 2. किसी अन्य पायथन स्क्रिप्ट से एक पायथन स्क्रिप्ट कैसे चलाएं और लौटा स्टेटस कोड प्राप्त करें?
- 3. मैं पायथन में निर्देशिका से फ़ाइल कैसे कहूं?
- 4. जावा में किसी अन्य निर्देशिका में फ़ाइल को कैसे खोलें?
- 5. पायथन: कैसे एक ज़िप फ़ाइल
- 6. पायथन: एक "आयात फ़ाइल"
- 7. पायथन: फ़ाइल
- 8. ब्राउजिंग फ़ाइल या निर्देशिका ब्राउज़िंग पायथन
- 9. पायथन subprocess.call() "ऐसी कोई फ़ाइल या निर्देशिका नहीं"
- 10. cx_freeze पायथन एकल फ़ाइल?
- 11. एकाधिक स्क्रिप्ट्स से एक ही पायथन फ़ाइल कैसे बनाएं
- 12. पृष्ठभूमि में एक पायथन स्क्रिप्ट कैसे चलाएं?
- 13. वर्तमान निर्देशिका प्राप्त करें और vbscript में एक फ़ाइल चलाएं?
- 14. टेक्स्ट फ़ाइल से ग्राफ (पायथन)
- 15. पायथन में विशिष्ट निर्देशिका में ज़िप फ़ाइल सामग्री निकालने 2.7
- 16. पायथन पैकेज में संबंधित फ़ाइल पथ
- 17. किसी अन्य "कक्षा"/फ़ाइल
- 18. एक्लिप्स में किसी प्रोजेक्ट से एकल जावा फ़ाइल कैसे चलाएं?
- 19. विंडोज बैच फ़ाइल: किसी अन्य निर्देशिका में निष्पादन योग्य कॉलिंग
- 20. पायथन में MIDI फ़ाइलें चलाएं?
- 21. किसी अन्य एसवीजी फ़ाइल
- 22. किसी अन्य से एक PowerShell स्क्रिप्ट चलाएं
- 23. पायथन फ़ाइल कैश
- 24. फ़ाइल किसी अन्य प्रक्रिया
- 25. किसी अन्य इकाई से प्रक्रिया कैसे चलाएं?
- 26. पायथन 3 में एक फ़ाइल का चयन
- 27. किसी अन्य जेएसपी फ़ाइल
- 28. किसी अन्य फ़ाइल में किसी वर्ग से फ़ंक्शन आयात करना?
- 29. पायथन पूरी पाठ फ़ाइल नहीं पढ़ता
- 30. एक .awk फ़ाइल कैसे चलाएं?
धन्यवाद, मैं इस अधिकार पर काम कर रहा हूँ अभी व। – user1938464