2012-11-05 10 views
7

मेरे पास एक स्ट्रिंग है जिसमें लिनक्स सिस्टम पर निर्देशिका पते के लिए उपयोगकर्ता इनपुट शामिल है। मुझे यह जांचने की ज़रूरत है कि क्या यह ठीक से स्वरूपित है और पाइथन 2.6 में एक पता हो सकता है। यह ध्यान रखना महत्वपूर्ण है कि यह वर्तमान सिस्टम पर नहीं है, इसलिए मैं यह जांच नहीं सकता कि यह os.path का उपयोग कर रहा है और न ही मैं निर्देशिका बनाने की कोशिश कर सकता हूं क्योंकि फ़ंक्शन कई बार चलाया जाएगा।जांचें कि कोई स्ट्रिंग मान्य पूर्ण पथ पता प्रारूप

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

+1

हमें कुछ दिखाएं। – alexvassel

+1

लिनक्स [फाइलनाम] (http://www.dwheeler.com/essays/fixing-unix-linux-filenames.html) में '\ 0' या'/'नहीं हो सकता है - यह केवल प्रतिबंध है – SeanC

उत्तर

19

ज़रूर सवाल यह है, लेकिन लेखन के बाद से संपादित किया गया है:

os.path.isabs (PATH) जो आपको पता चलेगा कि पथ निरपेक्ष है या नहीं है।

यदि पथ एक पूर्ण पथनाम है तो सत्य वापस लौटें। यूनिक्स पर, इसका मतलब है कि यह एक स्लैश के साथ शुरू होता है, विंडोज़ पर यह एक संभावित ड्राइव अक्षर को बंद करने के बाद (पीछे) स्लैश के साथ शुरू होता है।

+0

ध्यान दें कि यह विधि नहीं है सत्यापित करें कि पथ या फ़ाइल का नाम मौजूद है, इसलिए यह होना चाहिए कि ओपी –

+0

चाहता है, मैंने सवाल पूछकर पूछा कि क्या यह सही ढंग से स्वरूपित है या नहीं, यह उत्तर क्या है। – rsegal

संबंधित मुद्दे