जवाबों:
यहाँ कुंजी फ़ाइल के प्रतिनिधित्व वाली वस्तु की nameविशेषता है f। आप इसे इस तरह प्राप्त करते हैं:
>>> f = open('/Users/Desktop/febROSTER2012.xls')
>>> f.name
'/Users/Desktop/febROSTER2012.xls'
क्या इसने सहायता की?
tempfile, विशेष रूप से tempfile.NamedTemporaryFile, मॉड्यूल के प्रलेखन को पढ़ें tempfile.TemporaryFile। यह अस्थायी फ़ाइल के लिए विशिष्ट मामला है और, जैसा कि डॉक्स में देखा गया है, पहले से ही मौजूद समाधान है। tempfile.TemporaryFileयदि आप नाम पढ़ना चाहते हैं तो इसका उपयोग करने के लिए नहीं है।
मेरे पास एक ही मुद्दा था। यदि आप एक रिश्तेदार पथ का उपयोग कर रहे हैं os.path.dirname (पथ) केवल सापेक्ष पथ लौटाएगा। os.path.realpath करता है चाल:
>>> import os
>>> f = open('file.txt')
>>> os.path.realpath(f.name)
os.path.realpathहूं, तो '~ / दस्तावेज़ / text.txt' के बजाय '~ / text.txt' वापस आ जाएगा।
और अगर आप केवल निर्देशिका नाम प्राप्त करना चाहते हैं और इसके साथ आने वाले फ़ाइल नाम की कोई आवश्यकता नहीं है, तो आप osपायथन मॉड्यूल का उपयोग करके निम्न पारंपरिक तरीके से कर सकते हैं ।
>>> import os
>>> f = open('/Users/Desktop/febROSTER2012.xls')
>>> os.path.dirname(f.name)
>>> '/Users/Desktop/'
इस तरह आप डायरेक्टरी स्ट्रक्चर को पकड़ सकते हैं।
f = open('febROSTER2012.xls')। आप पूर्ण पथ पर कैसे पहुँच सकते हैं?
आप इसे इस तरह भी प्राप्त कर सकते हैं।
filepath = os.path.abspath(f.name)
tempfile.TemporaryFile(mode='w', prefix='xxx', suffix='.txt')काम नहीं करता है!