मेरे प्रोग्राम में, यदि फ़ाइल वर्तमान में मौजूद नहीं है तो कई प्रक्रियाएं फ़ाइल बनाने का प्रयास कर सकती हैं। अब मैं यह सुनिश्चित करना चाहता हूं कि प्रक्रियाओं में से केवल एक ही फाइल बनाने में सक्षम है और बाकी को अपवाद मिलता है यदि यह पहले से ही बनाया गया है (प्रक्रिया की तरह सुरक्षित और थ्रेड सुरक्षित खुला() कार्यान्वयन)। मैं इसे पायथन में कैसे प्राप्त कर सकता हूं।फ़ाइल बनाने और अपवाद फेंकने के लिए पहले से मौजूद है
बस स्पष्टता के लिए, मैं क्या चाहता हूं कि यह फ़ाइल मौजूद न हो तो फ़ाइल बनाई गई है। लेकिन अगर यह पहले से मौजूद है तो अपवाद फेंक दें। और यह सब परमाणु रूप से होना चाहिए।
यह कोड वांछित कार्यक्षमता प्राप्त करता है। – Adobri
@naxa, पायथन 3.3+ का दस्तावेज़ीकरण ['खुला (..., 'x')'] (https://docs.python.org/3/library/functions.html#open) में कोई उपलब्धता नहीं है 'जानकारी; आमतौर पर इसका मतलब है कि यह सभी प्लेटफार्मों का समर्थन करता है। पाइथन 2.x ['os.fdopen'] के दस्तावेज़ों के दौरान (https://docs.python.org/2/library/os.html#os.fdopen) उपलब्धता के बारे में उल्लेख करते हैं: यूनिक्स, विंडोज़। – falsetru
@naxa, [दस्तावेज़ीकरण: खुला() ध्वज स्थिरांक] के अनुसार [https://docs.python.org/2/library/os.html#open-flag-constants): निम्नलिखित स्थिरांक झंडे के लिए विकल्प हैं खुले() फ़ंक्शन पर पैरामीटर। उन्हें bitwise या ऑपरेटर का उपयोग करके जोड़ा जा सकता है। उनमें से कुछ सभी प्लेटफार्मों पर उपलब्ध नहीं हैं। उनकी उपलब्धता और उपयोग के विवरण के लिए, विंडोज़ पर यूनिक्स या एमएसडीएन पर खुले (2) मैनुअल पेज से परामर्श लें। – falsetru