pathlib печатает текущий путь к каталогу - PullRequest
1 голос
/ 05 марта 2020
import os
import sys
import pathlib
for folderName,subfolders,filenames in os.walk('/'):
    for filename in filenames:
    #   print(filename)
        if filename.endswith('.pdf'):
            path=pathlib.Path(filename).parent.absolute()
            print("the file "+str(filename)+" has path "+str(path))
  • Я хочу, чтобы этот скрипт искал все файлы pdf в ОС, и я также хочу напечатать путь к файлу, но когда я запускаю скрипт, он печатает имена файлов, но печатает путь в который у меня есть сценарий python и не печатать путь к файлу PDF.

1 Ответ

1 голос
/ 05 марта 2020

Это должно работать:

import os
import sys
import pathlib
    for folderName,subfolders,filenames in os.walk('/'):
        for filename in filenames:
            if filename.endswith('.pdf'):
                print(f"the file {filename} has path {folderName}")

Вам не нужен pathlib для этого. pathlib.Path (filename) будет рассматривать имя файла как относительный путь, и, таким образом, его родитель будет папкой, из которой был запущен скрипт.

...