os.path.isfile()
Duncan Booth
duncan.booth at invalid.invalid
Sun Jul 1 05:36:37 EDT 2007
7stud <bbxx789_05ss at yahoo.com> wrote:
> Here is a program to print out the files in a directory:
>
> -----------
> import os
>
> myfiles = os.listdir("../")
> print myfiles
>
> for afile in myfiles:
> print afile
> if os.path.isfile(afile):
> print afile, "___file"
> if os.path.isdir(afile):
> print afile, "___dir"
> print
> ------------
>
> Here is what's in the directory:
>
> ----------
> $ ls -al ../
>
> total 2576
> drwxr-xr-x 8 nnn nnn 272 Jul 1 03:03 .
> drwxr-xr-x 25 nnn nnn 850 Jul 1 01:34 ..
> -rw-r--r-- 1 nnn nnn 6148 Jul 1 03:02 .DS_Store
> -rw-r--r-- 1 nnn nnn 1300000 Jun 27 14:02 aaa.txt
> drwxr-xr-x 55 nnn nnn 1870 Jul 1 03:09 dir1
> -rwxrwxrwx 1 nnn nnn 263 Jun 27 22:40 mytest.py
> -rw-r--r-- 1 nnn nnn 0 Mar 4 16:15 scratch.txt
> -rw-r--r-- 1 nnn nnn 275 Apr 11 03:40 xmlFile.xml
> ------------
Yes, but what does 'ls -al .' show you? You didn't put any kind of path in
your calls to isfile/isdir, so you are checking for the existence of
files/directories called '.DS_Store' etc. in the *current* directory, not
the one above. From your output I'd guess you have .DS_Store and aaa.txt
files but the other names are not duplicated.
More information about the Python-list
mailing list