Trong bài này, chúng ta sẽ tìm hiểu cách để xác định một tệp (hoặc thư mục) có tồn tại hay không bằng Python. Để làm được điều này, chúng ta sẽ sử dụng các hàm trong thư viện dựng sẵn.
Có nhiều cách khác nhau để xác định một tệp hoặc thư mục tồn tại, chúng ta có thể sử dụng một số hàm sau:
-
os.path.exists ()
-
os.path.isfile ()
-
os.path.itorir ()
-
pathlibPath.exists ()
-
os.path.exists ()
os.path.exists()
Sử dụng “path.exists” bạn có thể nhanh chóng kiểm tra xem một tệp hoặc thư mục có tồn tại hay không. Dưới đây là các bước
Bước 1) Trước khi chúng ta thực thi mã thì chúng ta cần nạp module”os.path”
import os.path
from os import path
Bước 2) Bây giờ, sử dụng hàm “path.exists()” để kiểm tra xem tệp có tồn tại không.
path.exists("guru99.txt")
Bước 3) Dưới đây là mã nguồn hoàn chỉnh
import os.path
from os import path
def main():
print ("file exist:"+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()
Trong trường hợp này chỉ có tệp guru99.txt được tạo trong thư mục hiện hành.
Đầu ra:
File exists: True
File exists: False
directory exists: False
os.path.isfile()
Chúng ta có thể sử dụng hàm “isfile” để kiểm xem đầu vào đã cho là tệp hay thư mục.
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()
Đầu ra:
Is it File? True
Is it File? False
os.path.isdir()
Để kiểm tra đường dẫn có trỏ tới một thư mục hay không, chúng ta có thể sử dụng hàm “os.path.isdir()“.
mport 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()
Đầu ra:
Is it Directory? False
Is it Directory? True
pathlibPath.exists () với Python 3.4
Các phiên bản Python 3.4 trở lên có mô-đun pathlib dùngđể xử lý với đường dẫn hệ thống tới tệp. Nó sử dụng phương pháp hướng đối tượng để kiểm tra xem tệp có tồn tại hay không.
import pathlib
file = pathlib.Path("guru99.txt")
if file.exists ():
print ("File exist")
else:
print ("File not exist")
Đầu ra:
File exist
Mã nguồn đầy đủ
Dưới đây là toàn bộ mã nguồn:
mport 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("guru99.txt")))
print("Item is a file: " + str(path.isfile("guru99.txt")))
print("Item is a directory: " + str(path.isdir("guru99.txt")))
if __name__ == "__main__":
main()
Đầu ra:
Item exists: True
Item is a file: True
Item is a directory: False
Tổng kết:
-
Sử dụng path.exists để kiểm tra xem một tệp có tồn tại hay không.
-
Sử dụng path.isfile và path.isdir để kiểm tra xem một đường dẫn trỏ tới tệp hay thư mục.
-
Trong Python 3.4 và các phiên bản cao hơn, mô-đun pathlib được sử dụng để kiểm tra một tệp có tồn tại hay không.