Kahibaro
Discord Login Register

فایل چیست؟

درک مفهوم «فایل» در برنامه‌نویسی

وقتی با پایتون کار می‌کنید، خیلی زود به جایی می‌رسید که باید اطلاعات را ذخیره یا بازیابی کنید؛ اینجاست که «فایل» وارد ماجرا می‌شود.

در این بخش فقط می‌خواهیم خودِ مفهوم فایل را بفهمیم؛ این‌که • فایل چیست • چرا به وجود آمده • چه انواعی دارد • و کدام بخش آن برای برنامه‌نویس مهم است. روش خواندن و نوشتن فایل‌ها در فصل‌های بعدی همین فصل ۱۰ خواهد آمد.

فایل از دید یک کاربر در برابر دید یک برنامه‌نویس

از دید کاربر

به‌عنوان کاربر معمولی کامپیوتر، شما با انواع فایل‌ها سروکار دارید:

هر کدام از این‌ها برای شما یک آیکون روی دسکتاپ یا در یک پوشه است که با دوبار کلیک باز می‌شود.

از دید برنامه‌نویس

از نگاه برنامه‌نویس (و سیستم‌عامل)، فایل فقط یک دنباله از بایت‌هاست که روی حافظهٔ پایدار (مثل هارد، SSD، فلش) ذخیره شده است.

برای ما در پایتون مهم است که:

  1. بتوانیم فایل را پیدا کنیم (با کمک مسیر و نام فایل).
  2. آن را باز کنیم.
  3. از آن بخوانیم یا در آن بنویسیم.
  4. آن را ببندیم تا ذخیره‌سازی کامل شود.

جزئیات داخلی سیستم‌عامل خارج از محدودهٔ این دوره است؛ ما روی استفادهٔ عملی تمرکز می‌کنیم.

ساختار کلی یک فایل

از دید شما به‌عنوان برنامه‌نویس پایتون، هر فایل سه بخش مهم دارد:

  1. نام فایل (مثلاً data.txt)
  2. پسوند فایل (مثلاً .txt)
  3. محتوا (متن، عدد، دادهٔ ساخت‌یافته و …)

نام و پسوند فایل

پسوند معمولاً به سیستم‌عامل و برنامه‌ها کمک می‌کند تا:

برای پایتون، پسوند دو کاربرد مهم دارد:

  1. نوع داده را برای انسان روشن‌تر می‌کند (مثلاً می‌فهمیم data.csv احتمالاً جدولی از داده‌هاست).
  2. گاهی پایتون بر اساس پسوند، روش خواندن فایل را متفاوت تنظیم می‌کند (مثلاً حالت متنی یا دودویی).

محتوا: متن در برابر دادهٔ دودویی

از نظر کلی دو دستهٔ مهم فایل داریم:

  1. فایل‌های متنی (Text Files)
  2. فایل‌های دودویی (Binary Files)

در برنامه‌نویسی مبتدی پایتون، تمرکز اصلی روی فایل‌های متنی است، ولی دانستن تفاوت آن‌ها مهم است.

۱. فایل متنی چیست؟

فایل متنی فایلی است که محتوا را به صورت کاراکترهای قابل خواندن برای انسان ذخیره می‌کند.

نمونه‌ها:

اگر یک فایل متنی را با یک ویرایشگر ساده مثل Notepad یا VS Code باز کنید، معمولاً متن قابل‌خواندن می‌بینید.

ویژگی‌های مهم:

۲. فایل دودویی چیست؟

فایل دودویی (Binary) فایلی است که محتوا را به صورت بایت‌های خام ذخیره می‌کند که مستقیماً برای انسان قابل‌فهم نیست.

نمونه‌ها:

اگر یک فایل دودویی را با ویرایشگر متن باز کنید، معمولاً ترکیبی از کاراکترهای نامفهوم، علامت‌های عجیب و کدهای غیرقابل‌خواندن می‌بینید.

در پایتون، اگر بخواهید با فایل دودویی کار کنید (مثلاً کپی کردن یک عکس)، فایل را در حالت دودویی باز می‌کنید ("rb"، "wb"). جزئیات این کار در بخش‌های بعدی خواهد آمد.

برای این دوره، در بیشتر مثال‌ها با فایل‌های متنی ساده کار می‌کنیم تا روی منطق برنامه‌نویسی تمرکز داشته باشیم.

فایل‌ها و حافظهٔ موقت (RAM)

در برنامه‌نویسی، تفاوت مهمی وجود دارد بین:

وقتی برنامهٔ پایتون شما متوقف می‌شود:

پس اگر می‌خواهید:

باید داده‌ها را در فایل‌ها ذخیره کنید.

مکان فایل: پوشه، مسیر و نام

برای این‌که برنامهٔ شما بتواند فایلی را باز کند، باید بداند کجا آن را پیدا کند. این‌جا چند مفهوم مهم وجود دارد:

  1. پوشه (directory / folder): جعبه‌ای که فایل‌ها داخل آن قرار می‌گیرند.
  2. مسیر (path): آدرسی که به فایلی خاص می‌رسد.
  3. نام فایل: آخرین بخش مسیر، مثلاً data.txt.

برای نمونه، یک مسیر در ویندوز:

C:\Users\Ali\Documents\data.txt

و یک مسیر در لینوکس یا macOS:

/Users/ali/Documents/data.txt

در این زیر‌بخش، فقط مفهوم کلی را می‌شناسیم. در قسمت «مسیر فایل‌ها» در همین فصل، روش کار دقیق با مسیرها و چالش‌های معمول (مثل اسلش رو به جلو و عقب) را می‌بینید.

نقش سیستم‌عامل در کار با فایل

سیستم‌عامل (ویندوز، لینوکس، macOS و …):

پایتون برای کار با فایل‌ها از توابعی استفاده می‌کند که در نهایت به سیستم‌عامل می‌گویند:

شما لازم نیست جزئیات فنی سیستم‌عامل را بدانید؛ فقط باید بدانید:

فایل‌ها در مقایسه با متغیرها

برای روشن‌تر شدن نقش فایل‌ها، آن‌ها را با متغیرها مقایسه کنیم:

مثال ساده:

انواع کاربردهای سادهٔ فایل‌ها در پایتون

در این دوره، با انواع پیشرفتهٔ فایل (مثل فایل‌های دیتابیس، فرمت‌های پیچیدهٔ باینری و …) کاری نداریم. تمرکز ما روی مثال‌هایی مثل:

در بخش‌های بعدی این فصل می‌بینید:

Views: 6

Comments

Please login to add a comment.

Don't have an account? Register now!