File Path retrieving problem
John Machin
sjmachin at lexicon.net
Thu Feb 26 00:11:56 EST 2009
On Feb 26, 3:16 pm, music24... at gmail.com wrote:
> On Feb 26, 9:03 am, Steve Holden <st... at holdenweb.com> wrote:
>
>
>
> > music24... at gmail.com wrote:
> > > On Feb 26, 2:35 am, Emile van Sebille <em... at fenx.com> wrote:
> > >> Peter Otten wrote:
> > >>> Maybe it's about access rights?
> > >>> $ mkdir alpha
> > >>> $ touch alpha/beta
> > >>> $ python -c"import os; print os.path.exists('alpha/beta')"
> > >>> True
> > >>> $ chmod u-x alpha
> > >>> $ python -c"import os; print os.path.exists('alpha/beta')"
> > >>> False
> > >>> $
> > >>> I Don't know how this is handled on Windows...
> > >> Here's one way....
>
> > >> Microsoft Windows XP [Version 5.1.2600]
> > >> (C) Copyright 1985-2001 Microsoft Corp.
> > >> C:\>mkdir alpha
> > >> C:\>touch alpha\beta # cygwin at work here...
>
> > >> C:\>python -c"import os; print os.path.exists('alpha/beta')"
> > >> True
>
> > >> C:\>cacls alpha /E /R "Everyone"
> > >> processed dir: C:\alpha
> > >> C:\>cacls alpha /E /R "Users"
> > >> processed dir: C:\alpha
> > >> C:\>cacls alpha /E /R "Administrators"
> > >> processed dir: C:\alpha
>
> > >> C:\>python -c"import os; print os.path.exists('alpha/beta')"
> > >> False
>
> > > Hi,
>
> > > This is the following code which i have used to retrieve the pathname
> > > of a filename given by the user
>
> > > filename = self.enText.get() # get the text entered in the
> > > text box
> > > if os.path.exists(filename): # checking if the filename
> > > exists , had replaced it with os.path.exists(os.path.abspath
> > > (filename))
> > > print os.path.abspath(filename)
> > > else:
> > > print "Not found"
>
> > > actually i need to list all the files/folders with the given filename
> > > alongwith path and store it in an CSV file with index.
>
> > > But i am unable to get even a single filepath correctly.
> > > Whatever filename i enter the output is as : C:\Python25\WorkSpace
> > > \xyz
> > > i.e the name i entered is being appended to my workspace and
> > > displayed.
> > > Guys, i am not able to understand what shall i do here...plz help me
> > > out.
>
> > Look, we aren't psychic. We can't debug code and directories we can't
> > see. Work with us here - give us the information we need to help you.
>
> > The actual code. A directory listing? Any error messages?
>
> > regards
> > Steve
> > --
> > Steve Holden +1 571 484 6266 +1 800 494 3119
> > Holden Web LLC http://www.holdenweb.com/
>
> Hi Steve,
>
> Following is the code which i have written to display a GUI textbox
> and get any name entered by the user and search the path of this
> filename and then list it into an CSV file.
>
> For this i initially created an textbox widget and added an button to
> it.
> Now, i have entered a filename (like NEWS.txt) in the text boz,
> as you can see when i press the button i retrieve the text and then
> search its filepath.
> currently i am printing this filepath on the shell.
>
> from Tkinter import *
> import os
> from os.path import realpath, exists, abspath
> import tkMessageBox
> import Tkinter
> #import filePath
>
> class GUIFrameWork(Frame):
> """This is the GUI"""
>
> def __init__(self,master=None):
> """Initialize yourself"""
>
> """Initialise the base class"""
> Frame.__init__(self,master)
>
> """Set the Window Title"""
> self.master.title("Enter Text to search")
>
> """Display the main window"
> with a little bit of padding"""
> self.grid(padx=10,pady=10)
> self.CreateWidgets()
>
> def CreateWidgets(self):
>
> self.enText = Entry(self)
> self.enText.grid(row=0, column=1, columnspan=3)
>
> """Create the Button, set the text and the
> command that will be called when the button is clicked"""
> self.btnDisplay = Button(self, text="Display!",
> command=self.Display)
> self.btnDisplay.grid(row=0, column=4)
>
> def Display(self):
> """Called when btnDisplay is clicked, displays the contents of
> self.enText"""
> filename = self.enText.get()
Add some more code in here:
print "filename", repr(filename)
cwd = os.getcwd()
print "cwd", cwd
abspath = os.path.abspath(filename)
print "abspath", repr(abspath)
exists = os.path.exists(abspath)
print "exists", exists
and copy/paste the output into your reply.
Also tell us the name of the folder that the file allegedly exists in,
with a folder listing to prove it.
Also show us the result of using the ATTRIB command on your file, like
in the following examples:
C:\junk>attrib c:\io.sys
SHR C:\IO.SYS
C:\junk>attrib c:\python26\python.exe
A C:\python26\python.exe
Again, use copy/paste in your reply.
> if os.path.exists(os.path.abspath(filename)):
> print os.path.abspath(filename)
> else:
> print "Not found"
> #tkMessageBox.showinfo("Text", "You typed: %s" %
> os.path.abspath(os.path.dirname(filename)))
>
> #filepath.mydir(self.enText.get())
>
> if __name__ == "__main__":
> guiFrame = GUIFrameWork()
> guiFrame.mainloop()
>
> User Input: NEWS.txt
> Output: Not Found (though this file is actually present)
More information about the Python-list
mailing list