برنامه نویسیپایتون

کار با فایل در پایتون

کار با فایل در پایتون

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

باز کردن فایل متنی در پایتون

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

روش اول به صورت زیر است:

file = open('name of the file','mode')
file.close()

در خط اول یک متغیر با اسم دلخواه تعریف کردیم، ما در این جا اسم متغیر را file گذاشتیم. بعد از آن متد open را فرا میخوانیم. در این جا باید به متد open دو مقدار بدهیم، مقدار اولی اسم فایل یا مسیر فایل و در مقدار دومی حالت پردازش را قرار میدهیم ( در ادامه با انواع حالت پردازش (mode) آشنا می شویم). در خط دوم متغییر را صدا زدیم و با متد close() فایل را از حالت پردازش درآوردیم یا به اصطلاح فایل را بستیم.

روش دوم به صورت زیر است:

with open('name of the file','mode') as file:
    condition ...

در این روش از متد with استفاده می کنیم و بعد از متد with مانند روش اول open را فراخوانی کرده و اسم فایل و حالت پردازش را میدهیم و در ادامه از as file استفاده میکنیم تا بتوانیم با فایل کار کنیم. در اینجا file مانند متغیر در روش اول است. همچنین در روش دوم نیازی نیست تا از متد close کنیم.

with به ما کمک می کند تا کدها را مدیریت کنیم. به دستور زیر توجه کنید که اگر از متد with استفاده نکنیم چه میشود:

file = open('name of the file','mode')
    try: file.write('hello world')
finally:
    file.close()

انواع حالت پردازش فایل (mode)

کار با فایل ها در پایتون - انواع حالت پردازش فایل (mode)

در این مرحله می خواهیم با انواع روش های پردازش فایل آشنا شویم و در مراحل بعدی یک برنامه ساده مینویسیم تا درک بهتری از کار با فایل ها پیدا کنید.

  • r: باز کردن فایل و خواندن داده های داخل آن
  • w: فایلی را برای نوشتن باز می کند. اگر فایل جدیدی وجود نداشته باشد، فایل جدیدی ایجاد می کند.
  • x: یک فایل جدید ایجاد میکند و اگر فایل از قبل وجود داشته باشد اخطار می دهد.
  • a: فایل را باز میکند و داده های جدید را داخلش اضافه میکند. بدون اینکه داده های قبلی پاک شود و اگر فایل وجود نداشته باشد یک فایل جدید میسازد.
  • b: برای کار با فایل های باینری

با کاربرد هر mode آشنا شدیم. در ادامه هر یک از mode ها و تابع های آن ها را توضیح میدهیم.

متد های r

read(): داده های خوانده شده را به شکل رشته برمی گرداند.

file = open("MyFile.txt", "r")
file.read()
file.close()

readline(): یک خط از فایل را می خواند و به شکل یک رشته برمی گرداند. حتما باید مشخص کنیم چند کاراکتر را بخواند.

file = open("MyFile.txt", "r")
file.readline(n)
file.close()

readlines(): تمام خطوط را می خواند و آنها را به عنوان یک لیست برمی گرداند.

file = open("MyFile.txt", "r")
file.readlines()
file.close()

متد های w

write(): رشته داده شده را در یک خط در فایل متنی قرار می دهد.

file = open("MyFile.txt", "w")
file.write('kaliboys')
file.close()

writelines(): برای نوشتن لیستی از داده ها در فایل استفاده میشود. کد زیر تمام آیتم های لیست را به صورت خط های جدا در فایل ذخیره می کند.

lists = ['kaliboys', 'python', 'file']
file = open("MyFile.txt", "w")
file.writelines(lists)
file.close()

متد های a

write(): رشته داده شده را در یک خط در فایل متنی قرار می دهد.

file = open("MyFile.txt", "a")
file.write('kaliboys1')
file.close()

پروژه کار با فایل ها در پایتون

# نوشتن آیتم های لیست در فایل
1 file = open("myfile.txt", "w")
2 L = ["kali \n", "boys \n", "python"]
3 file.writelines(L)
4 file.close()

# اضافه کردن متن
5 file = open("myfile.txt", "a") # append mode
6 file.write("files \n")
7 file.close()

8 file = open("myfile.txt", "r")
9 print("خروجی")
10 print(file.read())
11 file.close()

در خط اول فایل را باز کردیم از حالت w استفاده کردیم. در خط بعد یک لیست درست کردیم و با استفاده از متد writelines() آیتم های لیست را درون فایل قرار دادیم.

خط بدی مانند خط اول فایل را باز میکنیم، ولی با این فرق که از حالت a استفاده میکنیم و متد write() را فراخوانی میکنیم و رشته مورد نظر را درونش قرار میدهیم تا درون فایل اضافه شود. در آخر فایل را میخوانیم و خروجی به صورت زیر است:

خروجی
kali
boys
pythonfiles

در این مثال میخوایم از روش دوم استفاده کنیم:

myList = ['kali','boys','python']

with open('MyList.txt','x'):

    with open('MyList.txt','w') as file:
        file.writelines(myList)

    with open('MyList.txt','r') as file:
        print(file.read())

ابتدا یک لیست ساختیم و بعد با استفاده از متد with و حالت x یک فایل ساختیم. در مرحله بعد از حالت w استفاده کردیم و متد writelines را فراخوانی کردیم تا آیتم های لیست را درون فایل بریزیم و در آخر داده های فایل را میخوانیم که خروجی به صورت زیر می باشد:

kaliboyspython

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

علی پازکی

علاقه مند به حوزه امنیت و تکنولوژی

دیدگاهتان را بنویسید

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


دکمه بازگشت به بالا