خاطرات دیجیتال
### داستان بیست و سوم: خاطرات دیجیتال
آراد پس از یادگیری تکنیکهای مختلف برنامهنویسی و کار با دادهها، به این فکر افتاد که یک برنامه بنویسد که بتواند خاطراتش را ذخیره کند. او میخواست برای هر روز یک خاطره بنویسد و بعداً به آنها مراجعه کند. اما آراد نمیدانست چطور میتواند این دادهها را به صورت دائمی ذخیره کند.
آراد به سینا پیام داد: «سینا، من میخواهم برنامهای بنویسم که خاطرات روزانهام را ذخیره کنم و بعداً بتوانم آنها را بخوانم. چطور میتوانم این کار را انجام بدهم؟»
سینا با خوشحالی جواب داد: «خیلی خوبه آراد! برای این کار میتونی از فایلها استفاده کنی. با استفاده از دستوراتی مثل `open()`, `read()`, `write()`, و `close()` میتونی فایلها رو باز کنی، دادهها رو در اونها ذخیره کنی و در نهایت فایلها رو ببندی.»
#### باز کردن فایلها
سینا برای آراد توضیح داد که ابتدا باید فایل را باز کند. او یک مثال ساده نوشت که نشان میدهد چطور میتوان یک فایل متنی را باز کرد.
“`python
# باز کردن فایل برای نوشتن
فایل = open(“خاطرات.txt”, “w”)
فایل.write(“این اولین خاطره من است.\n”)
فایل.close()
“`
سینا توضیح داد که در اینجا از دستور `open()` برای باز کردن فایل استفاده شده است. حالت `”w”` به این معنی است که فایل برای نوشتن باز میشود و اگر فایل وجود نداشته باشد، یک فایل جدید ایجاد میشود. بعد از نوشتن دادهها با دستور `write()`, فایل باید بسته شود تا تغییرات ذخیره شوند.
#### خواندن از فایل
آراد که حالا فایل خاطرات را ذخیره کرده بود، میخواست دوباره آن را بخواند تا خاطراتش را مرور کند. سینا به او یاد داد که چطور میتواند از فایل بخواند.
“`python
# باز کردن فایل برای خواندن
فایل = open(“خاطرات.txt”, “r”)
محتوا = فایل.read()
print(محتوا)
فایل.close()
“`
سینا توضیح داد که در اینجا، فایل با حالت `”r”` باز شده است، که به معنی “خواندن” است. بعد از آن، با استفاده از دستور `read()`, تمام محتویات فایل خوانده شده و در متغیر `محتوا` ذخیره میشود. سپس محتویات چاپ میشود.
#### اضافه کردن دادهها به فایل
آراد خواست که بتواند به فایل خاطراتش، خاطرات جدید اضافه کند بدون اینکه اطلاعات قبلی پاک شوند. سینا گفت: «برای این کار، باید از حالت `”a”` (اضافه کردن) استفاده کنی.» او مثالی برای آراد نوشت:
“`python
# باز کردن فایل برای اضافه کردن دادهها
فایل = open(“خاطرات.txt”, “a”)
فایل.write(“امروز با دوستانم به پارک رفتم.\n”)
فایل.close()
“`
سینا گفت: «در اینجا، با استفاده از حالت `”a”`, دادهها به انتهای فایل اضافه میشوند بدون اینکه اطلاعات قبلی حذف شوند.»
#### بررسی وجود فایل
آراد میخواست مطمئن شود که قبل از خواندن یا نوشتن، فایل وجود دارد یا خیر. سینا به او پیشنهاد داد که از دستور `os.path.exists()` استفاده کند تا بررسی کند که آیا فایل وجود دارد یا نه.
“`python
import os
# بررسی وجود فایل
if os.path.exists(“خاطرات.txt”):
فایل = open(“خاطرات.txt”, “r”)
محتوا = فایل.read()
print(محتوا)
فایل.close()
else:
print(“فایل خاطرات پیدا نشد.”)
“`
سینا توضیح داد که در اینجا، ابتدا بررسی میشود که آیا فایل وجود دارد یا نه. اگر فایل وجود داشته باشد، محتویات آن خوانده میشود، و اگر نه، پیامی مبنی بر عدم وجود فایل نمایش داده میشود.
#### نتیجهگیری
آراد گفت: «وای! حالا میفهمم که چطور میتونم خاطراتم رو در یک فایل ذخیره کنم و بعداً اونها رو بخونم. این خیلی مفید بود!»
سینا با لبخند جواب داد: «درسته آراد! با استفاده از فایلها میتونی دادهها رو به صورت دائمی ذخیره کنی. حالا میتونی خاطراتت رو هر وقت که خواستی مرور کنی.»
آراد با خوشحالی گفت: «ممنون سینا! حالا میدونم چطور میتونم از فایلها برای ذخیره و بازیابی دادهها استفاده کنم. این برنامه من رو خیلی جذابتر میکنه!»