[Tutor] getting around ValueError in os.walk
Jason Massey
jason.massey at gmail.com
Mon Jan 30 23:34:53 CET 2006
Andrew,
I put in your code, exactly as you have it, with only three changes:
#!/usr/bin/python
import os
for (dirpath, subdirs, filenames) in os.walk("/python24"): # a comma
instead of a period after dirpath
for file in filenames:
if file.endswith(".py"):
# py instead of baz, just for my machine
print os.path.join(dirpath,file) #
file instead of f
This walks the directories and prints out the path and filename.
On a side note I've never had a problem throwing several thousand files or
lines at python.
On 1/30/06, Andrew D. Fant <fant at pobox.com> wrote:
>
> I'm working on a program to do some processing on a directory tree. If I
> had
> been doing it in a shell script, the core of the processing would have
> been in
> a "find $ROOT -type f -name FOO -print" command"
>
> On the web, I found a snippet of code that demonstrated the os.walk module
> and
> I created a simple test program to work on my tree that looked like this:
>
> #!/usr/bin/python
> import os
>
> for (dirpath. subdirs, filenames) in os.walk("/foo/bar"):
> for file in filenames:
> if file.endswith(".baz"):
> print os.path.join(dirpath,f)
>
>
> when I try to run it, I get a "ValueError: too many values to unpack"
> which I
> think comes from the fact that there is a subdirectory of /foo/bar which
> has
> over 2500 files in it. The tree can't be easily restructured for legacy
> reasons. Can anyone suggest the best way to get around this in code?
>
> Thanks,
> Andy
>
> --
> Andrew Fant | And when the night is cloudy | This space to let
> Molecular Geek | There is still a light |----------------------
> fant at pobox.com | That shines on me | Disclaimer: I don't
> Boston, MA | Shine until tomorrow, Let it be | even speak for myself
>
> _______________________________________________
> Tutor maillist - Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/tutor/attachments/20060130/11ede0da/attachment.html
More information about the Tutor
mailing list