[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] Python oder Perl



On 02.Aug 2005 - 15:26:23, Eduard Bloch wrote:
> Hallo Harald Weidner!
> Harald Weidner schrieb am Tuesday, den 02. August 2005:
> 
> > [Python]
> > >>import os
> > >>list = os.listdir('/tmp')
> > >>for filename in list:
> > >>    print filename,
> > >>    if os.path.isdir(filename):
> > >>        print "is a directory"
> > >>    else:
> > >>        print "is a regular file"
> 
> Das ist bei (Python 2.3) ziemlich kaputt. Manche Dateien mit . am Anfang
> werden angezeigt, manche nicht. Klingt nicht grade vertrauenswürdig...

Aehm, die Liste ist unsortiert, sicher das du alle Elemente in der
Ausgabe ueberprueft hast? Hier jedenfalls gehts wunderbar.

> > opendir(LIST, "/tmp");
> > while(defined($filename = readdir LIST)) {
> >   print $filename;
> >   if(-d "/tmp/$filename") {
> >     print " is a directory.\n";
> >   } else {
> >     print " is a regular file.\n";
> >   }
> > }
> > closedir(LIST);
> 
> Das ist die langatmige Variante. Die kürzere benutzt globbing:

Und verstaendliche Variante.

> for(</tmp/*>) {
>   print "$_ is a ".( (-d $_) ? "directory\n" : "file\n");
> }

Und das und ...

> oder kompakter, jetzt aber mit versteckten Dateien:
> 
> print "$_ is a ".(-d $_ ? "directory\n" : "file\n") for(</tmp/*>,</tmp/.*>);

Das sind die Gruende warum ich Perl nicht mag. Ich bin auch schreibfaul,
aber die Zeilen versteht man ohne Nachdenken nicht mehr nach nem halben
Jahr nicht anschauen.

Andreas

-- 
You will be awarded the Nobel Peace Prize... posthumously.



Reply to: