[PIPython] modulo cmd

Paolo Mossino mox79
Ven 19 Nov 2004 15:16:53 CET


Marco wrote:
> tiziano @ work wrote:
> 
>> qualcosa del tipo...
>>
>> print '\t'.join([f for f in os.listdir('.') if f[:len(pre)]==pre ])
>>
>> con 'pre' uguale alla parte di comando/file/dir già scritta?
> 
> puoi spiegare meglio queste istruzioni...Grazie

Stampa qualcosa.

Il qualcosa è ottenuto facendo un join di una lista, usando un tab come 
collante tra gli elementi.

La lista viene composta con una list comprehension, ottenuta da tutti gli 
elementi f generati dal comando os.listdir() che rispecchiano una certa 
condizione.

La condizione è che inizino con pre.

f[:len(pre)] è la sottostringa di f che parte dalla posizione 0 e arriva 
fino a len(pre) esclusa... stai guardando che questa sottostringa (anzi, 
questo prefisso) sia proprio pre.

Potevi ottimizzare usando startwith():

     print '\t'.join([f for f in os.listdir('.') if f.startwith(pre)])

-- 
  ,___,    ~ Paolo Mossino  (Alexander)         e-m a il: mox79 a gmx.it ~
  (0v0)    ~ Jabber ID : alexander a jabber.linux.it - ICQ #: 28473944 ~
  (_^((\   ~ "My crime is judging people by what they say and think, ~
  -"-"-\\  ~ not what they look like"          [Mentor's Last Words] ~



More information about the Python mailing list