تخفیف شگفت انگیز پاییزی درسمن

20% تا 70% تخفیف

ثانیه

دقیقه

ساعت

روز

کار با فایل ها در پایتون به صورت کامل و جامع


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

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

ما در هر برنامه ای که می‌نویسیم، داده های آن توسط کاربر پر می‌شود و این داده ها به صورت نا پایدار و در حافظه رم ذخیره می‌شوند. این داده ها از کاربر دریافت شده و بر روی آنها پردازش صورت می‌گیرد اما در لحظه بسته شدن برنامه پاک می‌شدند. این به دلیل ذخیره سازی آنها در یک حافظه نا پایدار است.گاهی در محیط‌های کاربردی ما نیاز به ذخیره داده ها به صورت مانرگار داریم تا مجدداً از آنها استفاده کنیم.
روشی که از قدیم مورد استفاده قرار می‌گرفته، استفاده از فایل‌ها است. فایل‌ها در حافظه‌های جانبی مانند هارد کامپیوتر ذخیره می‌شوند که انواع آنهارا مانند فایل‌های متنی، تصویری، صوتی و غیره در محیط اطراف مشاهده می‎کنیم.
انواع فایل‌هایی که می‎توان با زبان برنامه نویسی پایتون بر روی آنها کار کرد به دو دسته تقسیم می‌شوند، فایل‌های متنی (اسکی) و فایل‌های دودویی (باینری). فایل‎های متنی توسط همه ویراشگر های متنی قابل خواندن می‌باشند. فایل‌های دودویی که همان فیلم، تصویر و ... هستند برای خوانده شدن نیاز به نرم‌افزار های خاص دارند و اگر آنها را با ویرایشگر های متنی باز کنیم شاهد متونی ناخوانا و بی معنی خواهیم بود.
 
آشنایی با نحوه ایجاد فایل در زبان پایتون
هرگاه ما از فایل‎ها استفاده می‎کنیم در واقع توسط یک اشاره گر به فایل مورد نظر متصل شده و عملیات خود را که یا خواندن و یا نوشتن در فایل است را انجام می‎دهیم و پس از پایان کار فایل را می‌بندیم. برای باز کردن فایل در زبان برنامه نویسی پایتون از تابع open استفاده می‌کنیم. این تابع یک فایل را از آدرسی که به او می‌دهیم برای ما باز می‌کند. حتی می‌توانیم روش یا مد باز شدن فایل را نیز مشخص کنیم. با قرار دادن یک کاراکتر خاص درون این تابع می‌توانی مشخص کنیم که این فایل برای چه کاری یا با چه هدفی باز شده است. در ادامه با این کاراکتر ها آشنا می‌شوید.
  • اگر یک فایل با مد r باز شود یعنی این فایل برای خواندن باز شده و امکان درج داده در آنرا نداریم.
  • اگر یک فایل با مد w باز شود یعنی فایل برای نوشتن باز شده و اگر فایل وجود نداشته باشد ابتدا آنرا ایجاد کرده و سپس آنرا باز می‌کند. باز شدن یک فایل با این مد موجب پاک شدن همه داده های درون آن می‌شود.
  • اگر یک فایل با مد a باز شود یعنی فایل برای نوشتن باز شده و اگر فایل وجود نداشته باشد ابتدا آنرا ایجاد کرده و سپس آنرا باز می‌کند. باز شدن یک فایل با این مد بر خلاف مد w محتویات درون فایل را پاک نمی‌کند بلکه داده های جدید را در انتهای فایل ذخیره می‌کند.
برای ایجاد فایلی که در کامپیوتر شما وجود ندارد از مد x استفاده می‌کنیم. در هنگام ساخت فایل با این مد اگر فایل قبلاً وجود داشته باشد برنامه با خطا مواجه خواهد شد.
مد t و b برای معرفی نوع فایل به کامپایل استفاده می‌شوند.
ساختار کلی تابع open به شکل زیر می‎باشد.
 
متغیر = open ("آدرس فایل","مد باز شدن فایل")
 
حال یک فایل را با مد x که همان ساختن فایل است باز می‌کنیم. اگر آدرسی وارد نکنیم و فقط نام فایل را بنویسیم، محل ذخیره سازی را در کنار محل پروژه در نظر می‌گیرد. توجه داشته باشید که اگر این دستود را دو بار اجرا کنید با خطا مواجه خواهید شد زیرا بار اول فایل را ساخته و بار دوم نام فایل تکراری می‌شود.
 
fl=open("filenew.txt","x")
 
حال همان فایل را با مد w باز می‌کنیم تا درون آن داده وارد کنیم. برای درج داده در فایل‌ها از دستود write استفاده می‌کنیم. همان طور که در بالا توضیح داده شد باید بعد از هر عملی بر روی فایل‌ها آنها را ببندیم، برای بستن فایل‌ها از دستود close استفاده می‌کنیم.
 
fl=open("filenew.txt","w")
fl.write("Darsman.com")
fl.close()
اگر هزاران بار کد بالا را اجرا کنیم، خواهیم دید که کلمه Darsman.com تنها یک بار درون فایل نوشته شده است زیرا مد w هر بار محتویات فایل را پاک کرده و دباره آنرا پر می‌کند. اما اگر به‌جای آن از مد a استفاده کنیم، با هر بار اجرای برنامه یک بار کلمه Darsman.com درون فایل ذخیره خواهد شد.
 
fl=open("filenew.txt","a")
fl.write("Darsman.com")
fl.close()
 
حال اگر قصد خواندن فایل را داشته باشیم باید فایل را با مد r باز کنیم. برای خواندن همه محتویات فایل از دستور read و برای خواندن یک خط از فایل از دستور readline استفاده می‌کنیم.
fl=open("filenew.txt","r")
fl.read()
fl.readline();
fl.close()
گاهی اوقات در روند برنامه ما نیاز به حذف یک فایل داریم. برای این کار باید از ماژول os و تابع remove این ماژول کمک بگیریم. ساختار کلی استفاده از این ماژول به شکل زیر می‌باشد.
import os
os.remove("آدرس فایل")
 
حال قصد داریم فایلی که ساخته ایم را حذف کنیم.
 
import os
os.remove("filenew.txt")
 
اگر کد بالا را بیش از یک بار اجرا کنیم با خطا مواجه خواهیم شد. زیرا در اولین بار اجرا فایل حذف شده و در دومین بار دیگر فایلی با آن نام نخواهیم داشت. برای جلوگیری از چنین رخدادی باید چک کنیم که آیا فایلی با این نام وجود دارد یا نه و بعد اقدام به حذف آن کنیم. برای انجام این کار از کلاس path و تابع exists استفاده می‌کنیم. این تابع آدرس یک فایل را گرفته و وجود داشتن یا نداشتن آن را مشخص می‌کند.
 
import os
if(os.path.exists("filenew.txt ")):
os.remove("filenew.txt")
 
کاربران و همراهان همیشگی درسمن، اگر از دوره آموزش پایتون راضی بودید نظر خود را در قسمت تالار گفت وگو بنویسید، از تعامل و همکاری شما ممنونیم .
نظرات
مرتضی حسین بر
مرتضی ریگی سپاسگذارم از شما و خدا قوت ، اجرتون با خدا و آرزوی بهترین ها برای شما بردار عزیزم.

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1

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

 

پیمان سبزی زاده
پیمان سلام ممنونم بابت دوره خوبی که گذاشتید واقعا عالی بود ببخشید یه سوال داشتم به غیر از این دوره،دوره های متوسط و پیشرفته هم تو سایت گذاشته میشه؟؟؟چه دوره های دیگه ای قراره بزارید واسه پایتون(منظورم دوره های متوسط و پیشرفته ست)؟؟؟؟؟؟؟؟؟؟؟

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1

سلام پیمان جان، امیدوارم حالتون خوب و خوش باشه.

بله برنامه های فوق العاده ای برای پایتون داریم، برای آشنایی با آن ها و نحوه برگزاری حتما پیج اینستاگرام درسمن را دنبال کنید با آیدی darsmancom

هرگونه سوال از نحوه برگزاری را در دایرکت بپرسید دوستان پاسخگو هستند و مشاوره های لازم را خدمتتون ارائه می دهند.

nophoto
فرشته چرا از جلسه اول به بعد باز نمیشه؟؟؟

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1

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

رحیم بابایی
Rahizzz ممنون بابت آموزش عالیتون بیصبرانه منتظر دوره پیشرفته هستیم زمان احتمالی برای قرار گرفتن دوره پیشرفته روی سایت چقدره؟

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1

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

رحیم بابایی
Rahizzz سلام خسته نباشید استاد چرا من جلسه 20 رو ندارم؟؟

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1

سلام وقت شما بخیر، کلا جلسه بیستم قرار داده نشده، مبحث آن در دوره پیشرفته پایتون گفته خواهید شد.

علی مالداران
علی سلام خوبین استاد؟ اقا من الان یک اسکریپت پایتون نوشتم میخوام قفلش کنم که کسی نتونه بخونه اسکریپت هامو یعنی همون حرکتی بود که فایل اپلیکشن رو تکست میکردی بعد یک سری نوشته های ناخوانا بود یا مثل فایل لوا سی که خونده نمیشه ولی کار میکنه میخوام فایل استارت بشه کار بکنه ولی کسی نتونه ادیت کنه فایل رو

برای پاسخ باید وارد شوید

پشتیبانی 1
پشتیبانی 1

سلام علی جان وقتت بخیر، لطفا سوال خودتون رو در بخش انجمن برنامه نویسان پایتون درج کنید. در این بخش نظرات و پیشنهادات قرار می گیرد. سپاس از همراهی شما.


نظر بدهید نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.


مشخصات دوره


مدرس دوره : مهدی عباسی
تعداد جلسات 20 جلسه
مدت زمان 534 دقیقه
حجم دوره 1/04 گیگابایت
سطح مهارت مقدماتی
وضعیت دوره پایان یافته
تعداد دانشجویان 3650
: میانگین امتیاز

رایگان
برای دسترسی به این دوره وارد یا عضو شوید.
مهدی عباسی

مهدی عباسی


درباره مدرس :

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