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

چرا باید از context manager (دستور with) استفاده کنیم؟

وقتی فایلی را با دستور open باز می‌کنید، باید در نهایت آن را ببندید. اگر وسط برنامه خطایی رخ دهد، خط مربوط به بستن فایل اجرا نمی‌شود. دستور with تضمین می‌کند که فایل پس از پایان کار — حتی در صورت بروز خطا در برنامه — به طور خودکار و امن بسته شود.

خواندن و نوشتن فایل در پایتون

برای نوشتن در یک فایل جدید:


with open("note.txt", "w", encoding="utf-8") as file:
    file.write("سلام پایتون!")

برای خواندن اطلاعات از همان فایل:


with open("note.txt", "r", encoding="utf-8") as file:
    content = file.read()
    print(content)

نکته‌های مهم

  • حالت "w" فایل قبلی را پاک کرده و از نو می‌نویسد. برای اضافه کردن متن به انتهای فایل قبلی، از حالت "a" (مخفف append) استفاده کنید.

  • همیشه پارامتر encoding="utf-8" را بفرستید تا در نمایش حروف فارسی روی سیستم‌های مختلف به مشکل برنخورید.

  • برای فایل‌های بزرگ، به جای خواندن یکجای فایل با read() ، خط به خط روی آن با یک حلقه for حرکت کنید تا حافظه رم اشغال نشود.

بازگشت به آموزش‌ها