بررسی وجود دایرکتوری یا فایل در پایتون — به زبان ساده + مثال و کد

آخرین به‌روزرسانی: ۷ اسفند ۱۴۰۰
زمان مطالعه: ۳ دقیقه

اگر به کدنویسی با زبان برنامه‌نویسی پایتون می‌پردازید، احتمالاً تاکنون با این سناریو مواجه شده‌اید که لازم بوده یک فایل یا دایرکتوری خاص را باز کنید، اما مطمئن نبوده‌اید که آیا آن مسیر فایل روی درایو مورد نظر وجود دارد یا نه. بدیهی است که در صورت عدم وجود دایرکتوری، می‌توان با روش‌های مختلف مدیریت خطا این موقعیت را مدیریت کرد. اما چه بهتر است که نگذاریم کار حتی به آنجا بکشد و قبل از این که اقدام به باز کردن فایل یا دایرکتوری کنیم، از وجود یا عدم وجود آن آگاه شویم. با ما همراه باشید تا با روش بررسی فایل در پایتون آشنا شوید.

متد ()exists در پایتون برای بررسی وجود یک فایل یا دایرکتوری خاص مورد استفاده قرار می‌گیرد. همچنین از این متد برای بررسی ارجاعی به یک توصیفگر فایل باز نیز استفاده می‌شود. در صورتی که فایل موجود باشد، این متد مقدار true و در غیر این صورت مقدار false بازگشت می‌دهد. این مد از سوی ماژول os و ماژول فرعی os.path به صورت زیر استفاده می‌شود:

os.path.exists(path)

در این راهنما با روش بررسی وجود یک فایل یا دایرکتوری در پایتون آشنا خواهیم شد. روش‌های مختلفی برای بررسی وجود دایرکتوری در پایتون وجود دارند که هر کدام از آن‌ها را به صورت جداگانه معرفی و بررسی خواهیم کرد. همچنین پیش از ادامه مطلب لازم است یادآور شویم که اگر به تازگی یادگیری پایتون را شروع کرده‌اید و به دنبال کتاب‌های آموزش پایتون و بهترین مسیر یادگیری پایتون هستند توصیه می‌کنیم مطالبی که در همین رابطه در مجله فرادرس تهیه شده‌اند را مطالعه کنید.

دستور ()os.path.exists

با استفاده از متد path.exists می‌توانیم به سرعت وجود یا عدم وجود یک فایل را در پایتون بررسی کنیم. مراحل کار به صورت زیر است.

گام اول: ایمپورت کردن ماژول os.path

پیش از آن که کد را اجرا کنید، ابتدا باید ماژول os.path را ایمپورت کنید.

import os.path
from os import path

گام دوم: استفاده از تابع ()path.exists

اکنون از تابع ()path.exists در پایتون به منظور بررسی وجود فایل استفاده می‌کنیم.

path.exists("faradars.txt")

گام سوم: اجرای کد

کد کامل بررسی وجود فایل به صورت زیر است.

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()

در این مثال تنها فایل faradars.txt در دایرکتوری کاری ایجاد شده است. در نتیجه خروجی به شکل زیر است.

خروجی

File exists: True
File exists: False
directory exists: False

روش ()Python isfile

متد ()Python isfile بررسی می‌کند آیا مسیر ارائه شده یک فایل معمولی موجود است یا نه. این متد در صورت وجود فایل، یک مقدار بولی true و در غیر این صورت مقدار false بازگشت می‌دهد. ساختار این دستور به صورت زیر است:

os.path.isfile(path)

در مثال زیر روش استفاده عملی از این دستور را مشاهده می‌کنید.

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()

خروجی کد فوق چنین است.

Is it File? True
Is it File? False

روش ()os.path.isdir

اگر بخواهیم تأیید کنیم که مسیر مفروض واقعاً به یک دایرکتوری اشاره دارد یا نه، می‌توانیم از تابع ()os.path.isdir پایتون کمک بگیریم.

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()

خروجی کد فوق چنین است.

Is it Directory? False
Is it Directory? True

معرفی فیلم آموزش برنامه‌نویسی پایتون Python – مقدماتی

وجود فایل در پایتون

در این دوره آموزشی، مفاهیم زبان برنامه‌نویسی پایتون از صفر و به صورت مقدماتی تشریح شده‌اند. شما به عنوان مخاطب این آموزش، لازم نیست هیچ نوع دانش قبلی در خصوص پایتون داشته باشید، چرا که در طی این بیست ساعت دوره آموزشی، هر آن چه برای شروع به کار با زبان پایتون نیاز دارید را می‌آموزید.

  • برای مشاهده فیلم آموزش برنامه‌نویسی پایتون Python – مقدماتی + اینجا کلیک کنید.

روش ()pathlibPath.exists برای پایتون 3.4

در پایتون 3.4 و نسخه‌های بالاتر ماژول pathlib برای مدیریت مسیرها در سیستم فایل اضافه شده است. این ماژول از رویکرد شیء‌گرایی برای بررسی وجود یا عدم وجود پوشه بهره می‌گیرد.

import pathlib
file = pathlib.Path("guru99.txt")
if file.exists ():
    print ("File exist")
else:
    print ("File not exist")

خروجی کد فوق چنین است.

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("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()

خروجی این کد نیز چنین است.

Item exists: True
Item is a file: True
Item is a directory: False

سخن پایانی

در این مطلب با چهار روش مختلف برای بررسی وجود فایل یا دایرکتوری در پایتون آشنا شدیم. این که از کدام یک از این روش‌ها استفاده می‌کنید، در عمل به پارامترهای مختلفی از جمله مجموعه ماژول‌هایی که از قبل در پروژه خود ایمپورت کرده‌اید و همچنین نسخه پایتونی که مورد استفاده قرار می‌دهید بستگی دارد.

بر اساس رای ۱۰ نفر
آیا این مطلب برای شما مفید بود؟
شما قبلا رای داده‌اید!
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
guru99
۲ thoughts on “بررسی وجود دایرکتوری یا فایل در پایتون — به زبان ساده + مثال و کد

سلام. میشه سوالات مربوط به مقاله تحلیلگر لغوی و نحوی رو هم جواب بدید

سلام و وقت بخیر دوست عزیز؛
با کمال میل پاسخ داده شد.
از توجه شما متشکریم.

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *