У меня есть много каталогов с файлами в них. Я хочу, чтобы создать запятую TXT имени каталога файла, показывающие, и файлы, которые находятся в пределах конкретного каталога, смотрите пример ниже:Название каталога + имя файла в текстовый файл
Что я ищу:
DirName,Filename
999,123.tif
999,1234.tif
999,abc.tif
900,1236.tif
900,xyz.tif
...etc
Питон коды ниже подталкивает список этих путей к файлу в текстовый файл, однако я не уверен, как отформатировать список, как описано выше.
Мой текущий код выглядит следующим образом:
Update
я смог отформатировать текстовый файл теперь, однако я заметил, все имена каталогов/имена файлов не записываются в текстовый файл. Он пишет ~ 4000 файлов ~ 8000 файлов. Есть ли какой-то лимит, который я достиг с текстовым файлом, числом строк, размером списка (mylist) или некоторым файлом dir/file, который его останавливает (см. Обновленный код ниже)?
from os import listdir
from os.path import isfile, join
root = r'C:\temp'
mylist = ['2']
for path, subdirs, files in os.walk(root):
for name in files:
mylist.append(os.path.join(path, name))
txt = open(r'C:\temp\output.txt', 'w')
txt.write('dir' + ',' + 'file' + '\n')
for item in mylist:
list = mylist.pop(0)
dir, filename = os.path.basename(os.path.dirname(list)), os.path.basename(list)
txt.write(dir + ',' + filename + '\n')
with open(r'C:\temp\output.txt', 'r') as f:
read_data = f.read()
Спасибо
под вашим фрагментом csv, должны ли быть файлами? Если это так, я получаю сообщение об ошибке, которое говорит, что не может конкатенировать «str» и «list». – artwork21
Извините @ artwork21, теперь он исправлен, 'p' был действительно' f' (текущий путь к файлу) –
Отлично, спасибо! – artwork21