پایتون نیز از مدیریت فایل پشتیبانی میکند و به کاربران اجازه میدهد تا فایلها را مدیریت کنند، یعنی فایلها را بخوانند و بنویسند، و بسیاری از گزینههای مدیریت فایل دیگر، تا روی فایلها کار کنند. مفهوم مدیریت فایل در زبان های مختلف دیگر نیز وجود دارد، اما پیاده سازی آن یا پیچیده و یا طولانی است، اما در پایتون همانند سایر مفاهیم، این مفهوم نیز آسان و کوتاه است. پایتون با فایل ها بر اساس متنی یا باینری بودنشان متفاوت رفتار می کند و این مهم است. هر خط کد شامل دنباله ای از کاراکترها که یک فایل متنی را تشکیل می دهند. هر خط از یک فایل با یک کاراکتر خاص به نام کاراکترهای EOL یا پایان خط مانند کاما {،} یا کاراکتر خط جدید خاتمه می یابد. خط فعلی را به پایان میرساند و به مترجم میگوید که خط جدیدی شروع شده است. بیایید با خواندن و نوشتن فایل ها شروع کنیم.
کارکردن تابع open().
قبل از انجام هر عملیاتی مانند خواندن یا نوشتن روی فایل، ابتدا باید آن فایل را باز کنیم. برای این کار، باید از تابع داخلی open()
پایتون استفاده کنیم، اما در زمان باز کردن، باید حالت را مشخص کنیم که نشان دهنده هدف ما از باز کردن فایل است.
f = open(filename, mode)
که حالت های زیر پشتیبانی می شود:
- r: باز کردن یک فایل موجود برای عملیات خواندن.
- w: باز کردن یک فایل موجود برای عملیات نوشتن. اگر فایل قبلاً حاوی مقداری داده باشد، بازنویسی می شود، اما اگر فایل موجود نباشد، فایل را نیز ایجاد می کند.
- a: یک فایل موجود را برای عملیات الحاق باز کنید. داده های موجود را لغو نمی کند.
- r+: برای خواندن و نوشتن داده ها در فایل. داده های قبلی در فایل لغو می شوند.
- w+: برای نوشتن و خواندن داده ها. داده های موجود را لغو می کند.
- a+: برای افزودن و خواندن داده ها از فایل. داده های موجود را لغو نمی کند.
به مثال زیر دقت کنید:
# فایلی به نام "myfile" در مد خواندن باز خواهد شد
file = open('myfile.txt', 'r')
# کد زیر محتوای فایل را به صورت خط به خط چاپ می کند
for each in file:
print (each)
دستور open فایل را در حالت خواندن باز می کند و حلقه for هر خط موجود در فایل را چاپ می کند.
عملکرد متد read()
بیش از یک راه برای خواندن یک فایل در پایتون وجود دارد. اگر نیاز به استخراج رشته ای دارید که شامل تمام کاراکترهای فایل باشد، می توانیم از file.read()
استفاده کنیم . کد کامل به صورت زیر عمل می کند:
file = open("file.txt", "r")
print (file.read())
راه دیگر برای خواندن یک فایل این است که تعداد معینی از کاراکترها را فراخوانی کنید، مثلاً در کد زیر، مفسر پنج کاراکتر اول داده های ذخیره شده را می خواند و آن را به صورت رشته ای برمی گرداند:
file = open("file.txt", "r")
print (file.read(5))
ایجاد یک فایل با استفاده از متد write()
بیایید ببینیم که چگونه یک فایل ایجاد کنیم و متد write چگونه کار می کند، بنابراین برای دستکاری فایل، موارد زیر را در محیط پایتون خود بنویسید:
file = open('myfile.txt','w')
file.write("This is the write command")
file.write("It allows us to write in a particular file")
file.close()
دستور ()close
تمام منابع در حال استفاده را خاتمه می دهد و سیستم را از این برنامه خاص آزاد می کند.
عملکرد حالت الحاق
بیایید ببینیم حالت الحاق چگونه کار می کند:
file = open('myfile.txt', 'a')
file.write("This will add this line")
file.close()
همچنین دستورات مختلف دیگری نیز در بحث مدیریت فایل وجود دارد که برای انجام وظایف مختلف مانند زیر مهیا شده اند:
rstrip(): این تابع فاصله های اضافی را از سمت راست هر خط از فایل حذف می کند.
lstrip(): این تابع فاصله های اضافی را از سمت چپ هر خط از فایل حذف می کند.
عملکرد دستور with
این دستور به این منظور طراحی شده است تا سینتکس بسیار تمیزتر و مدیریت خطای بهتری را ارائه دهد. فایده این دستور این است که با استفاده از این روش، هر فایلی که باز میشود، پس از انجام آن بهطور خودکار بسته میشود، بنابراین پاکسازی خودکار انجام شود.
مثال:
with open("file.txt") as file:
data = file.read()
استفاده از متد write همراه با تابع with().
همچنین می توانیم از تابع write به همراه تابع with() استفاده کنیم:
with open("file.txt", "w") as f:
f.write("Hello World!!!")
دیدگاهها