Python удалить файл в корзину

Обновлено: 08.07.2024

Много раз пользователю или программисту python нужно удалить файл. Причина может быть в том, что он/она создал файл по ошибке, или в этом файле больше нет необходимости. Какова бы ни была причина, есть способы Python Delete file без ручного поиска файла и удаления его с помощью пользовательского интерфейса.

Существует несколько способов удаления файла в Python, но лучшие из них следующие:

  • os.remove() удаляет файл.
  • os.unlink() удаляет файл. это Unix-имя метода remove ().
  • shutil.rmtree() удаляет каталог и все его содержимое.

Python Удаляет Файл С Помощью os.remove()

Модуль ОСв Python предоставляет функции для взаимодействия с операционной системой. ОС поставляется под стандартными служебными модулями Python. Этот модуль обеспечивает портативный способ использования функций, зависящих от операционной системы.

метод os.remove() в Python используется для удаления или удаления пути к файлу. Этот метод не может удалить или удалить каталог. Если указанный путь является каталогом, то OSError будет вызван методом.

Примечание: Вы можете использовать os.rmdir() можно использовать для удаления каталога.

Синтаксис:

Ниже приведен синтаксис метода remove() для удаления файла Python −

Параметры

  • путь − Это путь или имя файла, который должен быть удален.

Возвращаемое значение

Метод remove() не возвращает значение.

Давайте рассмотрим некоторые примеры удаления файла Python с помощью функции os.remove.

Пример 1: Базовый пример удаления файла С помощью метода os.remove ().

Примечание: Если нет файла с именем test_file.txt приведенный выше пример выдаст ошибку. Поэтому лучше сначала проверить, доступен ли файл или нет, прежде чем удалять его.

Пример 2: Проверка наличия файла с помощью os.path.isfile и Удаление его С Помощью os.remove

В примере 1 мы только что удалили файл, присутствующий в каталоге. Метод os.remove() будет искать файл для удаления в рабочем каталоге. Поэтому всегда лучше проверить, есть ли файл там или нет.

Давайте узнаем, как проверить, доступен ли файл с таким именем в этом пути или нет. Мы используем os.path.isfile для проверки доступности файла.

В приведенном выше примере мы только что добавили метод os.path.isfile (). Этот метод помогает нам выяснить, существует ли файл в определенном месте или нет.

Пример 3: Программа Python для удаления всех файлов с определенным расширением

С помощью этой программы мы удалим все файлы из папки с расширением .txt .

Пример 4: Программа Python для удаления всех файлов Внутри папки

Чтобы удалить все файлы в определенном каталоге, вам просто нужно использовать символ * в качестве строки шаблона.

В этом примере мы удаляем все файлы внутри папки pythonpool.

Примечание: Если папка будет содержать какую-либо подпапку, то ошибка может быть вызвана тем, что метод glob.glob() извлекает имена всего содержимого папки, будь то файлы или подпапки. Поэтому попробуйте сделать шаблон более конкретным, например *.*, чтобы получить только то содержимое, которое имеет расширение.

Python Удаляет Файл С Помощью os.unlink()

Примечание: Все функциональные возможности и синтаксис одинаковы для os.unlink() и os.remove(). Оба они используются для удаления пути к файлу Python.Оба являются методами в модуле os в стандартных библиотеках Python, который выполняет функцию удаления.

Он имеет два имени, псевдонимы: os.unlink() и os.remove()

Python Удаляет Файл С Помощью shutil.rmtree()

shutil.rmtree(): Удаляет указанный каталог, все подкаталоги и все файлы. Эта функция особенно опасна, потому что она удаляет все без проверки (Python предполагает, что вы знаете, что делаете). В результате вы можете легко потерять данные, используя эту функцию.

Синтаксис:

Параметры:

path: Объект, подобный пути, представляющий путь к файлу. Объект, подобный пути, является либо строковым, либо байтовым объектом, представляющим путь.ignore_errors: Если ignore_errors имеет значение true, ошибки, возникающие в результате неудачного удаления, будут игнорироваться.oneerror: Если ignore_errors имеет значение false или опущено, такие ошибки обрабатываются вызовом обработчика, указанного onerror.

Давайте рассмотрим пример удаления файла с помощью скрипта python.

Пример: Программа Python для удаления файла с помощью shutil.rmtree()

Он удалит весь каталог файлов внутри теста, включая саму папку теста.

Python Удаляет Файл С Помощью pathlib.Path.unlink()

Модуль path lib доступен в Python 3.4 и выше. Если вы хотите использовать этот модуль в Python 2, вы можете установить его с помощью pip. pathlib предоставляет объектно-ориентированный интерфейс для работы с путями файловой системы для различных операционных систем.

Чтобы удалить файл с модулемpathlib, создайте объект Path, указывающий на файл, и вызовите метод unlink() для этого объекта:

Пример: Программа Python для удаления файла с помощью path lib

В приведенном выше примере метод path() используется для извлечения пути к файлу, тогда как метод unlink() используется для удаления или удаления файла по указанному пути.

Метод unlink() работает для файлов. Если указан каталог, возникает ошибка OSError. Чтобы удалить каталог, мы можем прибегнуть к одному из ранее рассмотренных методов.

Ссылки и обязательное чтение

Вывод

В этой статье мы изучили различные лучшие способы удаления файлов Python. Синтаксис удаления файла или папки с помощью Python довольно прост. Однако имейте в виду, что после выполнения вышеуказанных команд ваш файл или папка будут удалены навсегда.

Если у вас все еще есть какие-либо сомнения относительно Python, удалите файл. Дайте нам знать об этом в разделе комментариев ниже.


shutil.rmtree() deletes a directory and all its contents.

Path objects from the Python 3.4+ pathlib module also expose these instance methods:

pathlib.Path.unlink() removes a file or symbolic link.

pathlib.Path.rmdir() removes an empty directory.

13.3k 13 13 gold badges 60 60 silver badges 116 116 bronze badges 251k 45 45 gold badges 344 344 silver badges 387 387 bronze badges I wish Path.unlink 1/ was recursive 2/ add an option to ignore FileNotfoundError.

Python syntax to delete a file

pathlib Library for Python version >= 3.4

Path.unlink(missing_ok=False)

Unlink method used to remove the file or the symbolik link.

If missing_ok is false (the default), FileNotFoundError is raised if the path does not exist.
If missing_ok is true, FileNotFoundError exceptions will be ignored (same behavior as the POSIX rm -f command).
Changed in version 3.8: The missing_ok parameter was added.

Best practice

  1. First, check whether the file or folder exists or not then only delete that file. This can be achieved in two ways :
    a. os.path.isfile("/path/to/file")
    b. Use exception handling.

EXAMPLE for os.path.isfile

Exception Handling

RESPECTIVE OUTPUT

Python syntax to delete a folder

Example for shutil.rmtree()

5,069 3 3 gold badges 23 23 silver badges 28 28 bronze badges


10.4k 1 1 gold badge 36 36 silver badges 43 43 bronze badges

(See complete documentation on shutil) and/or

(Complete documentation on os.)


1,388 1 1 gold badge 14 14 silver badges 27 27 bronze badges 19.8k 7 7 gold badges 53 53 silver badges 108 108 bronze badges Please add the pathlib interface (new since Python 3.4) to your list.

Here is a robust function that uses both os.remove and shutil.rmtree :

9,207 3 3 gold badges 16 16 silver badges 14 14 bronze badges I.e. 8 lines of code to simulate the ISO C remove(path); call. @Kaz agreed annoying, but does remove deal with trees? :-) os.path.islink(file_path): a bug, should be os.path.islink(path):

You can use the built-in pathlib module (requires Python 3.4+, but there are backports for older versions on PyPI: pathlib , pathlib2 ).

To remove a file there is the unlink method:

Or the rmdir method to remove an empty folder:

126k 30 30 gold badges 290 290 silver badges 308 308 bronze badges

How do I delete a file or folder in Python?

For Python 3, to remove the file and directory individually, use the unlink and rmdir Path object methods respectively:

Note that you can also use relative paths with Path objects, and you can check your current working directory with Path.cwd .

For removing individual files and directories in Python 2, see the section so labeled below.

To remove a directory with contents, use shutil.rmtree , and note that this is available in Python 2 and 3:

Demonstration

New in Python 3.4 is the Path object.

Let's use one to create a directory and file to demonstrate usage. Note that we use the / to join the parts of the path, this works around issues between operating systems and issues from using backslashes on Windows (where you'd need to either double up your backslashes like \\ or use raw strings, like r"foo\bar" ):

Now let's delete them. First the file:

We can use globbing to remove multiple files - first let's create a few files for this:

Then just iterate over the glob pattern:

Now, demonstrating removing the directory:

What if we want to remove a directory and everything in it? For this use-case, use shutil.rmtree

Let's recreate our directory and file:

and note that rmdir fails unless it's empty, which is why rmtree is so convenient:

Now, import rmtree and pass the directory to the funtion:

and we can see the whole thing has been removed:

Python 2

If you're on Python 2, there's a backport of the pathlib module called pathlib2, which can be installed with pip:

В нашем руководстве по обработке файлов Python мы узнали, как манипулировать файлами из Python. В этом руководстве мы узнаем, как удалить файлы в Python.

Вступление

В нашем Учебник по обработке файлов Python Мы узнали, как манипулировать файлами из Python. В этом руководстве мы узнаем, как удалить файлы в Python.

Мы знаем, как читать и писать в файл в Python. Давайте выуменем сегодня Удалить операцию в Python.

Предположим, после успешного создания файла мы выполняем некоторые операции на нем, как чтение и запись. Как только мы сделаем, используя Файл для Анализ Различные наборы данных, возможно, в некоторых случаях нам не нужно в будущем. На данный момент Как мы удаляем файл? В этом руководстве мы собираемся узнать это.

Методы для удаления файлов в Python

Давайте посмотрим на различные методы, используя, с помощью которых мы можем удалить файлы в Python.

1. Использование модуля ОС

ОС модуль в Python Предоставляет несколько простых в использовании методы, используя, которые мы можем Удалить или Удалить файл, а также Пустой каталог Отказ Внимательно посмотрите на ниже, данный ниже:

Опять же ОС Модуль предоставляет нам другой метод, RMDIR () , который можно использовать для Удалить или Удалить Пустой каталог Отказ Например:

Примечание: Каталог должен быть пустым. Если он содержит какой-либо контент, метод, который мы возвращаем Осэррор Отказ

2. Использование модуля PURTIL

Шусил Еще один метод удаления файлов в Python, который позволяет пользователям для пользователя Удалить файл или его Полный каталог (включая все его содержание).

rmtree () это метод под Шусил Модуль, который удаляет каталог и его содержимое в рекурсивный манера. Давайте посмотрим, как его использовать:

3. Использование модуля PathLib

pathlib это Встроенный Модуль Python доступен для Python 3.4+ Отказ Мы можем Удалить файл или Пустой каталог используя этот предварительно определенный модуль.

Пойдем на примере:

В приведенном выше примере Путь () Метод используется для извлечения пути файла, тогда как Unlink () Метод используется для раскрытия или удаления файла для указанного пути.

Метод unlink () работает для файлов. Если указывается каталог, поднят OSERROR. Чтобы удалить каталог, мы можем прибегнуть к одному из ранее обсуждаемых методов.

Эй! В этом уроке мы узнаем о функциях, присутствующих в модуле shutil Python. Итак, давайте начнем.

Эй! В этом уроке мы узнаем о функциях, присутствующих в модуле shutil Python. Итак, давайте начнем.

Модуль shutil Python предоставляет нам ряд высокоуровневых операций с файлами. Мы можем копировать и удалять файлы и каталоги. Давайте начнем с модуля и подробно изучим практическую реализацию каждого из файлов.

Как скопировать файлы с помощью модуля shutil?

В модуле shutil доступны различные методы копирования содержимого одного файла в другой файл.

1. shutil.copyfileobj(src,dst)

Предположим, мы хотим скопировать содержимое файла data.txt кому data1.txt , мы можем использовать следующий фрагмент кода:

2. shutil.copy(src,dst)

Другой способ копирования данных из одного файла в другой может быть без создания объекта file. Здесь мы передаем относительный путь к нашим файлам.

3. shutil.copy2(src,dst)

функции copy (src,dst) и copy2(src,dst) почти одинаковы, но copy2(src,dst) также копирует метаданные исходного файла.

Метаданные включают информацию о том, когда файл был создан, доступен или изменен.

4. shutil.copyfile(src,dst)

Здесь источником и местом назначения может быть относительный путь или абсолютный путь. Предположим, мы хотим скопировать файл в папку, мы можем использовать следующий фрагмент кода:

5. shutil.move(src,dst)

Предположим, мы хотим удалить файл из одного места и переместить его в другое место. Вот, давайте двигаться shutil.py из источника в другое место:

6. shutil.copytree(src,dst)

Если мы хотим скопировать полную папку, содержащую все ее файлы, в новое место, мы можем использовать функцию copytree(src,dst ).

Он рекурсивно копирует все дерево каталогов с корнем в src в каталог с именем dst и возвращает каталог назначения.

Давайте скопируем папку Python в папку Новая папка .

Примечание: Мы должны создать новую папку внутри вашей целевой папки, так как функция не позволяет копировать содержимое в уже существующую папку.

Итак, здесь мы создали папку python 1 внутри папки Новая папка .

Как удалить/удалить файлы с помощью модуля shutil?

Теперь, когда мы узнали, как мы можем работать с перемещением и копированием файлов, давайте научимся удалять или удалять файлы из определенных мест в ваших скриптах Python.

Используя shutil.rmtree() , мы можем удалить любую папку,файл или каталог. Давайте удалим папку Python .

Как скопировать биты разрешений из одного файла в другой?

Копирование файла-это одна часть. Что делать, если вы просто хотите скопировать те же разрешения файла во все другие файлы? Давайте научимся делать именно это, используя модуль shutil здесь.

1. shutil.copymode(src,dst)

Этот метод копирует биты разрешений из src в dst. Давайте скопируем биты разрешений из каталога Python в каталог Python 1 .

2. shutil.copystat(src,dst)

shutil.copystat(src.dst) копирует биты разрешений вместе с метаданными.

Другие функции в модуле shutil

Теперь давайте рассмотрим различные функции модуля shutil.

1. shutil.disk_usage(путь)

функция shutil.disk_usage(path) возвращает статистику использования диска по заданным именам путей в виде кортежа с атрибутами total , который представляет собой общий объем памяти, used , который является используемым пространством и free , который является свободным пространством в байтах.

2. шутил.который()

шутил.функция which() возвращает путь к исполняемому приложению, которое запустилось бы, если бы была вызвана данная команда cmd.

Вывод

В этом уроке мы рассмотрели, как мы можем копировать, удалять и работать с другими операциями над файлами и папками с помощью модуля shutil в python. Надеюсь, вам всем понравилось. Оставайтесь с нами!

Читайте также: