ホームページ  >  記事  >  バックエンド開発  >  Python でファイルを削除するいくつかの方法を説明します

Python でファイルを削除するいくつかの方法を説明します

coldplay.xixi
coldplay.xixi転載
2021-03-17 10:19:2745489ブラウズ

Python でファイルを削除するいくつかの方法を説明します

開発者はファイルを削除する必要があることがよくあります。おそらく、彼が間違ってファイルを作成したか、そのファイルが不要になった可能性があります。理由が何であれ、手動でファイルを見つけて UI を操作して削除しなくても、Python を使用してファイルを削除する方法があります。

(無料学習の推奨: Python ビデオ チュートリアル)

Python を使用してファイルを削除する方法はたくさんありますが、最良の方法は次のとおりです。

  • ##os.remove() ファイルを削除します

  • os.unlink() ファイルを削除します。これは、remove() メソッドの Unix 名です。

  • shutil.rmtree() ディレクトリとその下のすべてのコンテンツを削除します。

  • pathlib.Path.unlink() Python 3.4 以降で、単一ファイル pathlib モジュールを削除するために使用されます。

os.remove()ファイルの削除

Python の OS モジュールは、オペレーティング システムと対話するための関数を提供します。関数。 OSはPythonの標準ユーティリティモジュールに属します。このモジュールは、オペレーティング システムに依存する機能を使用するポータブルな方法を提供します。 Python の

os.remove() メソッドは、ファイル パスを削除するために使用されます。この方法ではディレクトリを削除できません。指定されたパスがディレクトリの場合、このメソッドは OSError を発生させます。

注: ディレクトリは

os.rmdir() を使用して削除できます。

構文:

次は、Python ファイルを削除する

remove() メソッドの構文です:

os.remove(path)

パラメータ

  • path - これは削除するパスまたはファイル名です。

戻り値

remove()このメソッドには戻り値がありません。

os.remove 関数を使用して Python ファイルを削除する例をいくつか見てみましょう。

例 1: OS.Remove() メソッドを使用してファイルを削除する基本的な例。

# Importing the os library
import os

# Inbuilt function to remove files
os.remove("test_file.txt")
print("File removed successfully")

出力:

File removed successfully

説明: 上記の例では、ファイルを削除したか、

testfile.txt## という名前のファイルを削除しました #ファイルのパス。プログラム フローを説明する手順は次のとおりです: 1.

remove()

メソッドが OS ライブラリに存在するため、最初に OS ライブラリをインポートしました。 2. 次に、組み込み関数

os.remove()

を使用して、ファイルのパスを削除します。 3. この例では、サンプル ファイルは

"test_file.txt"

です。必要なファイルをここに配置できます。 注:

test_file.txt

という名前のファイルがない場合、上記の例ではエラーがスローされます。したがって、ファイルを削除する前に、ファイルが利用可能かどうかを確認することをお勧めします。

例 2:

Os.Path.Isfile を使用してファイルが存在するかどうかを確認し、Os.Remove## を使用して削除します。 #例 1 では、ディレクトリに存在するファイルを削除しました。 os.remove()

このメソッドは、作業ディレクトリで削除するファイルを検索します。したがって、ファイルが存在するかどうかを確認することをお勧めします。

特定の名前のファイルがそのパスに存在するかどうかを確認する方法を学びましょう。ファイルの可用性を確認するために os.path.isfile

を使用しています。

#importing the os Library
import os

#checking if file exist or not
if(os.path.isfile("test.txt")):
    
    #os.remove() function to remove the file
    os.remove("demo.txt")
    
    #Printing the confirmation message of deletion
    print("File Deleted successfully")
else:
print("File does not exist")
#Showing the message instead of throwig an error
出力:

File Deleted successfully
上記の例では、os.path.isfile()

メソッドのみを追加しました。このメソッドは、ファイルが特定の場所に存在するかどうかを確認するのに役立ちます。

例 3: 特定の拡張子を持つすべてのファイルを削除する Python プログラム

import os 
from os import listdir
my_path = 'C:\Python Pool\Test\'

for file_name in listdir(my_path):
    
    if file_name.endswith('.txt'):
      
        os.remove(my_path + file_name)
出力:

このプログラムを使用すると、拡張子 .txt

を持つすべてのファイルをフォルダーから削除します。

説明:

os モジュールと
    listdir
  • を os モジュールからインポートします。

    listdir は、特定のフォルダー内のすべてのファイルのリストを取得するために使用する必要があり、ファイルを削除するには os モジュールが必要です。

  • my_path
  • は、すべてのファイルが含まれるフォルダーへのパスです。

    指定されたフォルダー内のファイルを繰り返し処理します。
  • listdir
  • 特定のフォルダー内のすべてのファイルのリストを取得するために使用されます。

  • endswith
  • は、ファイルが

    .txt 拡張子で終わるかどうかを確認するために使用されます。これは、フォルダー内のすべての .txt ファイルを削除するときに条件が検証できる場合に行われます。

    ファイル名が
  • .txt
  • 拡張子で終わる場合は、

    os.remove() 関数を使用してファイルを削除します。この関数は、ファイルへのパスをパラメータとして受け取ります。 my_path file_name は、削除するファイルのフルパスです。

    #例 4: フォルダー内のすべてのファイルを削除する Python プログラム

特定のディレクトリ内のすべてのファイルを削除するには、 を使用します。 * シンボルをパターン文字列として使用します。

#Importing os and glob modules
import os, glob

#Loop Through the folder projects all files and deleting them one by one
for file in glob.glob("pythonpool/*"):
    os.remove(file)
    print("Deleted " + str(file))

出力:

Deleted pythonpool\test1.txt
Deleted pythonpool\test2.txt
Deleted pythonpool\test3.txt
Deleted pythonpool\test4.txt

この例では、pythonpool フォルダー内のすべてのファイルを削除します。

注意:如果文件夹包含其他子文件夹,则可能会报错,因为glob.glob()方法将获取所有文件夹内容的名称,无论它们是文件还是子文件夹。因此,请尝试使模式更具体(例如*.*),以仅获取具有扩展名的内容。

使用os.unlink()删除Python文件

os.unlink()os.remove()的别名。在Unix OS中,删除也称为unlink

注意:所有功能和语法与os.unlink()os.remove()相同。它们都用于删除Python文件路径。两者都是Python标准库的os模块中执行删除功能的方法。

它有两个名称,别名:os.unlink()os.remove()

为同一个函数提供两个别名的可能原因是,该模块的维护者认为,许多程序员可能会从C的底层编程转向Python,其中库函数和底层系统调用称为unlink(),而其他人则可能会使用rm命令(“删除”的缩写)或shell脚本来简化语言。

使用shutil.rmtree()删除Python文件

shutil.rmtree():删除指定的目录,所有子目录和所有文件。此功能特别危险,因为它无需检查即可删除所有内容。结果,您可以使用此功能轻松丢失数据。

rmtree()是shutil模块下的一种方法,该方法以递归方式删除目录及其内容。

句法:

Shutil.rmtree(path,ignore_errors = False,onerror = None)

参数:

path:类似路径的对象,表示文件路径。类路径对象是表示路径的字符串或字节对象。

ignore_errors:如果ignore_errorstrue,则删除失败导致的错误将被忽略。

oneerror:如果ignore_errorsfalse或被忽略,则通过调用onerror指定的处理程序来处理此类错误。

我们来看一个使用python脚本删除文件的示例。

示例:使用Shutil.Rmtree()删除文件的Python程序

# Python program to demonstrate shutil.rmtree() 
 
import shutil 
import os 
 
# location 
location = "E:/Projects/PythonPool/"
 
# directory 
dir = "Test"
 
# path 
path = os.path.join(location, dir) 
 
# removing directory 
shutil.rmtree(path)

输出:

它将删除Test内文件的整个目录,包括Test文件夹本身。

Python中使用pathlib.Path.unlink()删除文件

pathlib模块在Python  3.4及更高版本中可用。如果要在Python 2中使用此模块,可以使用pip进行安装。pathlib提供了一个面向对象的界面,用于处理不同操作系统的文件系统路径。

要使用pathlib模块删除文件,请创建一个指向该文件的Path对象,然后对该对象调用unlink()方法:

示例:使用Pathlib删除文件的Python程序

#Example of file deletion by pathlib
 
import pathlib
 
rem_file = pathlib.Path("pythonpool/testfile.txt")

rem_file.unlink()

在上面的示例中,path()方法用于检索文件路径,而unlink()方法用于删除指定路径的文件。

unlink()方法适用于文件。如果指定了目录,则会引发OSError。要删除目录,我们可以采用前面讨论的方法之一。

结论

在本文中,我们学习了Python删除文件的各种方法。使用Python删除文件或文件夹的语法非常简单。但是,请注意,一旦执行上述命令,您的文件或文件夹将被永久删除。

如果您仍然对Python删除文件有任何疑问。请在下面的评论部分中告诉我们。

大量免费学习推荐,敬请访问python教程(视频)

以上がPython でファイルを削除するいくつかの方法を説明しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。