Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen  (gelezen 2284 keer)

Offline xellos

  • Lid
ik heb dit

import os

path='/home/jeremy/a'
filelist=[os.listdir(path)
for files in filelist:
    print files
   

dit werkt hij print de de namen van alle files in die dir.
maar nu wil ik de namen een voor een benaderen en hernoemen maar hoe ik heb van alles al geprobeerd.
 

Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #1 Gepost op: 2009/02/26, 09:30:30 »
Je sluit de vierkante haakjes niet goed af.

Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #2 Gepost op: 2009/02/26, 09:51:52 »
Ik denk eerder dat het een copy/paste foutje is, aangezien hij de files te zien krijgt.

De vraag is: welke bestanden wilt ge hernoemen en tot wat? Als ge moet zoeken naar een bepaald woord in een bestandsnaam kunt ge re gebruiken. Dan moet ge ook nog weten tot wat ge dit wilt hernoemen.

Offline xellos

  • Lid
Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #3 Gepost op: 2009/02/26, 11:42:15 »
hij moet bij alle gevonden files de eerste 10 letter uit de file names halen .

Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #4 Gepost op: 2009/02/26, 13:04:07 »
import os

path='/home/jeremy/a'
filelist=[os.listdir(path)]
for file in filelist:
    os.rename(file, file[10:])

http://docs.python.org/library/os.html#os.rename

Offline xellos

  • Lid
Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #5 Gepost op: 2009/02/27, 15:42:36 »
import os

path='/home/jeremy/a'
filelist=[os.listdir(path)]

for files in filelist:
os.rename(files, files[15:])   


dit werkt niet

ik krijg deze error
    os.rename(files, files[15:])
TypeError: coercing to Unicode: need string or buffer, list found


Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #6 Gepost op: 2009/02/27, 16:04:13 »
Gokje, maar met
filelist=[os.listdir(path)]
plaats je toch een list in een list? Moeten die vierkante haken niet weg?

Offline Kiwinote

  • Lid
    • Launchpad
Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #7 Gepost op: 2009/02/27, 17:02:55 »
klopt..

Offline xellos

  • Lid
Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #8 Gepost op: 2009/02/27, 17:14:33 »
dat werkt ook niet hoor

Offline Kiwinote

  • Lid
    • Launchpad
Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #9 Gepost op: 2009/02/27, 18:22:32 »
als het goed is krijg je nu wel een andere foutmelding? Iets over path not found oid?

Offline xellos

  • Lid
Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #10 Gepost op: 2009/02/28, 16:15:00 »
ja dat klopt maar de path is wel goed duz whats wrong?? ???

Offline Kiwinote

  • Lid
    • Launchpad
Re: filenames van os.listdir(path) 1 voor 1 benaderen en hernoemen
« Reactie #11 Gepost op: 2009/02/28, 21:24:36 »
in additie tot de eerdergegeven opmerking ook onderstaande code gebruiken:os.rename(path + "/" + files,path + "/" + files[15:])ik denk dat dit wellicht zou kunnen werken..