Удалите файлы с Python через оболочку ОС - PullRequest
17 голосов
/ 04 апреля 2011

Я пытаюсь удалить все файлы в E :. с подстановочным знаком.

E:\test\*.txt

Я бы спросил, а не тестировал os.walk. В окнах

Ответы [ 3 ]

54 голосов
/ 04 апреля 2011

То, как вы это делаете, - это использование модуля glob:

import glob
import os
for fl in glob.glob("E:\\test\\*.txt"):
    #Do what you want with the file
    os.remove(fl)
17 голосов
/ 07 мая 2011

Слегка многословное написание другого метода

import os
dir = "E:\\test"
files = os.listdir(dir)
for file in files:
    if file.endswith(".txt"):
        os.remove(os.path.join(dir,file))

Или

import os
[os.remove(os.path.join("E:\\test",f)) for f in os.listdir("E:\\test") if f.endswith(".txt")]
0 голосов
/ 02 февраля 2016

Вы также можете использовать popen для этого, если хотите сделать это в несколько строк

from subprocess import Popen
proc = Popen("del E:\test\*.txt",shell=False)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...