2012-11-30 4 views
5

मैं सभी .xls फ़ाइलों की एक सूची बनाने के लिए चाहते हैं, तो मैं आमतौर परक्या glob.glob (...) os.listdir (...) या अन्य तरीकों से अधिक पसंद किया जाना चाहिए?

rdir=r"d:\temp" 
flist=[os.path.join(rdir,fil) for fil in os.listdir(rdir) if fil.endswith(".xls")] 
print flist 

का उपयोग हालांकि, मैं हाल ही में इस के लिए एक विकल्प है, जो है

rdir=r"d:\temp" 
import glob 
flist=glob.glob(os.path.join(rdir,"*.xls")) 
print flist 

देखा इन दोनों में से कौन सा तरीकों को प्राथमिकता दी जानी चाहिए और क्यों? या वे समान रूप से (अन) ध्वनि माना जाता है?

उत्तर

3

दोनों ठीक हैं। os.path.walk पर भी विचार करें यदि आप वास्तव में उस सूची के साथ कुछ करना चाहते हैं (बल्कि इसके लिए अपनी सूची के लिए सूची बनाना)।

+0

पायथन 3 के लिए यह os.walk है – poppie

4

मैं व्यक्तिगत रूप से glob.glob के साथ जाऊंगा, क्योंकि यह स्पष्ट है। हालांकि, क्योंकि यह listdir के आसपास एक रैपर है, इसलिए वे दोनों काम पूरा करते हैं।

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