在本教程中,我们将学习如何使用Python确定文件(或目录)是否存在。 为了检查这一点,我们使用内置库函数。
使用path.exists,您可以快速检查文件或目录是否存在。 步骤如下
步骤1)在运行代码之前,重要的是导入os.path模块。
import os.path
from os import path
步骤2)现在,使用path.exists()函数检查文件是否存在。
path.exists("guru.txt")
步骤3)这是完整的代码
import os.path
from os import path
def main():
print ("File exists:"+str(path.exists('guru99.txt')))
print ("File exists:" + str(path.exists('career.guru99.txt')))
print ("directory exists:" + str(path.exists('myDirectory')))
if __name__== "__main__":
main()
在我们的情况下,仅在工作目录中创建文件guru.txt
Output:
File exists: True
File exists: False
directory exists: False
我们可以使用isfile命令来检查给定的输入是文件还是目录。
import os.path
from os import path
def main():
print ("Is it File?" + str(path.isfile('guru99.txt')))
print ("Is it File?" + str(path.isfile('myDirectory')))
if __name__== "__main__":
main()
Output:
Is it File? True
Is it File? False
如果要确认给定路径指向目录,可以使用os.path.dir()函数
import os.path
from os import path
def main():
print ("Is it Directory?" + str(path.isdir('guru99.txt')))
print ("Is it Directory?" + str(path.isdir('myDirectory')))
if __name__== "__main__":
main()
Output:
Is it Directory? False
Is it Directory? True
Python 3.4及更高版本具有pathlib模块,用于处理文件系统路径。 它使用面向对象的方法来检查文件是否存在。
import pathlib
file = pathlib.Path("guru99.txt")
if file.exists ():
print ("File exist")
else:
print ("File not exist")
Output:
File exist
完整的代码
这是完整的代码
import os
from os import path
def main():
# Print the name of the OS
print(os.name)
#Check for item existence and type
print("Item exists:" + str(path.exists("guru.txt")))
print("Item is a file: " + str(path.isfile("guru.txt")))
print("Item is a directory: " + str(path.isdir("guru.txt")))
if __name__ == "__main__":
main()
Output:
Item exists: True
Item is a file: True
Item is a directory: False
os.path.exists() – 如果路径或目录确实存在,则返回True。os.path.isfile() – 如果路径为文件,则返回True。os.path.isdir() – 如果path为目录,则返回True。pathlib.Path.exists() – 如果路径或目录确实存在,则返回True。 (在Python 3.4及更高版本中)