Trying to drill through a directory on my drive that has subfoldrs within it. When I find files that have the file extensions I'm looking for I want the full file path. Right now this is what I have:
import os
import Tkinter
import tkFileDialog
from Tkinter import Tk
from tkFileDialog import askopenfilename
root = Tkinter.Tk().withdraw()
dirname = tkFileDialog.askdirectory(initialdir='.')
list = []
for root, dirs, files in os.walk(dirname):
for name in files:
if name.find(".txt") != -1:
name = str(name)
name = os.path.realpath(name)
list.append(name)
print list
This is returned
c:\users\name\desktop\project\file.txt
however that file.txt is located in
c:\users\name\desktop\project\folder1\file.txt
You probably need to join the filename with the directory that contains it:
os.path.realpath(os.path.join(root,name))
e.g. I just tested this:
import os
for root, dirs, files in os.walk('.'):
for name in files:
if name == 'foo':
name = str(name)
name = os.path.realpath(os.path.join(root,name))
print name
with the following directory structure:
test
+ foo
+ test2
+ foo
and it worked properly.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With