کار با فایل ها در پایتون (python) از جمله مواردی هستند که در دنیای برنامه نویسی ( programing) اهمیت ویژه ای دارند. کار با فایل ها مهارت مهمی است که هر توسعه دهنده پایتون بایستی آن را بیاموزد.
فایل اطلاعات یا داده هایی است که در دستگاه های ذخیره سازی رایانه باقی می مانند. شما در حال حاضر انواع مختلفی از فایل ها مانند فایل های موسیقی، فایل های ویدئویی، فایل های متنی خود را می شناسید. پایتون راه های آسانی برای دستکاری این فایل ها در اختیار شما قرار می دهد. ما به طور کلی فایل ها را به دو دسته فایل متنی و فایل باینری تقسیم می کنیم.
اگر می خواهید نحوه کار با فایل ها در پایتون که تنها بخشی کوتاهی از آموزش جامع پایتون را یاد بگیرید، در این آموزش با ما همراه باشید. بعد از این آموزش شما قادر خواهید بود در پایتون یک فایل را ایجاد کنید، نام آن را تغییر دهید، در یک پوشه لیست کنید و با دستورات فایل پایتون، تغییرات لازم را بدهید.
اهمیت کار با فایل:
خواندن، نوشتن و ویرایش و حذف فایل ها در پایتون یک روش رایجی است که شامل دستورات و متدهای خاص خود می باشد، در ادامه با انواع متدها آشنا خواهیم شد.
پردازش فایل یکی از مهمترین بخش های هر زبانی است. زبان پایتون از دو نوع فایل پشتیبانی می کند. اولی یک فایل متنی است که در آن داده ها به صورت متن ذخیره شده و توسط انسان و رایانه قابل خواندن است. دومی یک فایل باینری است که داده های باینری را ذخیره می کند و فقط توسط کامپیوتر قابل خواندن است.
ساخت فایل در python :
در این مقاله یک پروژه ساده ایجاد می کنیم تا با آموزش کار با فایل python را به شما نشان دهیم.
- یک فایل متنی جدید ایجاد کنید (اگر از قبل موجود نیست)
- فایل را برای ویرایش باز کنید.
- داده های خود را در فایل بنویسید.
- فایل را ذخیره کنید.
- وقتی کارتان تمام شد فایل را ببندید.
از تابع open() و close () استفاده کنید. (باز کردن و بستن فایل )
برای باز کردن فایل در پایتون ابتدا لازم است که فایل مورد نظر خود را با فرمت .txt در محیط VScode باز کنید و یک فایل با تابع () open داخلی ایجاد کنید و در این تابع مسیر فایلی که به فرمت .txt وجود دارد را وارد کنید. نام فایل مورد نظرتان را بنویسید ( برای مثال f ) و در ادامه حالت (mode) را تعیین کنید.
file = open ( file_name, “a+” )
F= open (“sample.txt”, “r” )
f.close()
اگر فایل وجود نداشته باشد، با استفاده از حالت ‘a’ ایجاد می شود.
معرفی modeهای فایل ( python programing mode ):
mode: ویژگی و حالت یک فایل در پایتون است که حالت باز شدن فایل را به ما مشخص می کند به عبارتی mode یکی از مهم ترین پارامترهای کار با فایل در پایتون می باشد.
در زیر انواع مودها را بررسی می کنیم:
- “r” = read
در این حالت شروع به خواندن اطلاعات از روی فایل می کند و در صورتی که فایلی وجود نداشته باشد با ارور و خطا، درخواست را اطلاع می دهد.
f = open(“sample.txt “, “r”)
- “a” = append
در این حالت، ابتدا شروع به بررسی فایل می کند که آیا فایل وجود دارد یا نه ؟!
اگر فایل وجود نداشته باشد یک فایل خالی ایجاد می شود و اگر فایلی از قبل وجود داشته باشد، همان پوشه را برای شما باز می کند ( فراخوانی می کند ).
- “w” = write
متد write() برای نوشتن در فایل متنی و افزودن محتوای رشته مورد نظر استفاده می شود.
- “x” = create
کار این حالت ایجاد کردن و درست کردن یک فایل جدید است و در صورتی که فایلی از قبل وجود داشته باشد آن را به فرمت ارور و خطا به شما برمی گرداند.
توابع کار با فایل در پایتون :
متد Read : کل فایل یا در صورت تعیین تعداد بایت، تعداد بایت مشخص شده را بازگشت می دهد.
f = open(“sample.txt “, “r”)
print(f.read(5))
در این متد شما می توانید تعداد کارکترهای برگشتی را تعیین کنید.
متد Readline : یک خط منفرد یا در صورت تعیین تعداد بایت ها تا آن خط را بازگشت می دهد. به عبارتی خط بعدی فایل را بر می گرداند و فایل را به صورت خط به خط فراخوانی می کند.
متد Readlines : در صورت تعیین تعداد فایل، مقدار مشخص شده را بازگشت می دهد و یک لیستی از خط های موجود در فایل را فرخوانی می کند.
محبوبیت پایتون به سرعت در حال رشد است، تا حدی به دلیل استفاده گسترده از آن در فناوری های جدید مانند علم داده، یادگیری ماشین و هوش مصنوعی (AI). همچنین به دلیل تطبیق پذیری، کارایی و دسترسی آن در توسعه نرم افزار محبوبیت بیشتری پیدا کرده است.
معرفی کتابخانه کار با فایل pickle
به عنوان یک توسعه دهنده پایتون ، ممکن است گاهی اوقات نیاز داشته باشد که سلسله مراتب های پیچیده فایل را روی یک شبکه ارسال کنید یا وضعیت داخلی فایل خود را در یک دیسک یا پایگاه داده برای استفاده بعدی ذخیره کنید. برای رسیدن به این هدف، میتوانید از فرآیندی به نام سریالسازی استفاده کنید که به لطف ماژول Pithon pickle توسط کتابخانه استاندارد پشتیبانی میشود.
کار با Pithon pickle برای سریال سازی و سریال زدایی یک ساختار موضوعی پایتون استفاده می شود. هر چیزی در پایتون را می توان طراحی کرد تا در دیسک ذخیره شود. Pickling راهی برای تبدیل یک موضوع python (list، dict و …) به یک جریان کاراکتر است.
فرآیند سریال سازی روشی برای تبدیل ساختار داده به شکل خطی است که می تواند از طریق شبکه ذخیره یا ارسال شود.
سریال سازی را می توان در موقعیت های مختلف استفاده کرد. یکی از رایج ترین کاربردها ذخیره وضعیت شبکه عصبی پس از مرحله آموزش است تا بتوانید بعداً بدون نیاز به انجام مجدد آموزش از آن استفاده کنید.
پایتون سه ماژول مختلف را در کتابخانه استاندارد ارائه میکند که به شما امکان میدهد اشیاء را سریالسازی و سریالزدایی کنید:
- The Marshal Module
- The json module
- The pickle module
کنترل خطا فایل:
پایتون استثناهای داخلی زیادی دارد که وقتی برنامه شما با خطا مواجه میشود (یک مشکل در برنامه پیش میآید) ایجاد میشوند.
هنگامی که این استثناها رخ می دهند، مفسر پایتون فرآیند فعلی را متوقف می کند و آن را به فرآیند فراخوانی ارسال می کند تا زمانی که مدیریت شود. اگر کنترل نشود، برنامه از کار می افتد.
برای مثال، اجازه دهید برنامه ای را در نظر بگیریم که در آن یک تابع A داریم که تابع B را فراخوانی می کند، که به نوبه خود تابع C را فراخوانی می کند. اگر یک استثنا در تابع C رخ دهد اما در C مدیریت نشود، استثنا به B و سپس به A می رود.
اگر کنترل نشود، یک پیغام خطا نمایش داده می شود و برنامه ما به طور ناگهانی به طور غیر منتظره خاموش می شود.
در پایتون، استثناها را می توان با استفاده از دستور try مدیریت کرد.
عملیات حیاتی که می تواند یک استثنا ایجاد کند در عبارت try قرار می گیرد. کدی که استثناها را کنترل می کند در عبارت استثنا نوشته شده است.
دستورات with as
دستور with در پایتون برای مدیریت منابع و مدیریت استثنا استفاده می شود. به احتمال زیاد هنگام کار با فایل آن را پیدا خواهید کرد. دستور with در پایتون در مدیریت استثنا استفاده میشود تا کد را واضح تر و خواناتر کند. مدیریت منابع رایج مانند جریان فایل را ساده می کند.
نمونه کد زیر را بررسی کنید که چگونه استفاده از دستور with کد را کوتاه تر و تمیز تر نمایش می دهد:
# 1) without using with statement
file = open(‘file_path’, ‘w’)
file.write(‘hello world !’)
file.close()
# 2) without using with statement
file = open(‘file_path’, ‘w’)
try:
file.write(‘hello world’)
finally:
file.close()
# using with statement
with open(‘file_path’, ‘w’) as file:
file.write(‘hello world !’)
دستور as مثل یک نام مستعار است. اگر یک کتابخانه یا ماژول را به یک برنامه وارد میکنید، اما به دلایلی میخواهید از نام دیگری (بیش از حد طولانی شدن یا گم کردن فایل به دلیل نامشخص بودن نام ) میتوان از آن برای تغییر نام استفاده کرد.
به مثال زیر توجه کنید با استفاده از این دستور as برای کار با فایل در python که با هدف کوتاه تر کردن کدها مورد استفاده قرار می گیرد.
>>> import numpy
>>> numpy.max([1,2,3])
3
>>> import numpy as np
>>> np.max([1,2,3])
3
>>> from itertools import combinations as comb
>>> comb([1,2,3], 2)
[(1,2), (2,3), (1,3)]
… [Trackback]
[…] There you will find 12880 additional Information on that Topic: yeksoal.com/کامپیوتر-و-اینترنت/آموزش-کار-با-فایل-در-پایتون-و-ارائه-دستو/ […]