मेरे पास एक स्ट्रिंग है जिसे मैं एक फ़ाइल नाम के रूप में उपयोग करना चाहता हूं, इसलिए मैं उन सभी पात्रों को हटाना चाहता हूं जिन्हें पायथन का उपयोग करके फ़ाइल नाम में अनुमति नहीं दी जाएगी।
मैं अन्यथा के बजाय सख्त होना चाहूँगा, इसलिए मान लें कि मैं केवल अक्षरों, अंकों और अन्य वर्णों के एक छोटे समूह को बनाए रखना चाहता हूं "_-.() "
। सबसे सुरुचिपूर्ण समाधान क्या है?
फ़ाइलनाम को कई ऑपरेटिंग सिस्टम (विंडोज, लिनक्स और मैक ओएस) पर मान्य होने की आवश्यकता है - यह मेरी लाइब्रेरी में एमपी 3 फ़ाइल है जिसे फ़ाइल नाम के रूप में फ़ाइल नाम के साथ रखा गया है, और इसे 3 मशीनों के बीच साझा और समर्थित किया गया है।
os.path
वास्तव में ओएस के आधार पर एक अलग पुस्तकालय लोड करता है ( प्रलेखन में दूसरा नोट देखें )। इसलिए यदि इसमें एक कोटिंग फंक्शन लागू किया गया था, os.path
तो केवल POSIX सिस्टम पर चलने पर या विंडोज़ पर चलने के दौरान विंडोज़-सेफ्टी के लिए स्ट्रिंग को POSIX-safety के लिए उद्धृत किया जा सकता था । परिणामस्वरूप फ़ाइल नाम आवश्यक रूप से दोनों विंडोज़ और POSIX पर मान्य नहीं होगा, जो कि प्रश्न पूछता है।