در جلسه 18، آموزش کار با فایل ها در برنامه نویسی پایتون رو براتون داریم. از فایل ها (File) برای ذخیره اطلاعات در طولانی مدت استفاده می شود.
آموزش کار با فایل ها در برنامه نویسی پایتون
در برنامه نویسی با اهداف مختلفی نیاز داریم با فایل ها کار کنیم. کار با فایل ها در برنامه نویسی مهارتی است که هر برنامه نویسی باید با آن آشنا باشد. چه بخواهید از آن در پروژه های شخصی خود استفاده کنید و چه قصد وارد شدن در حوزه های مختلف مثل علوم داده دارید، حتما باید با آن آشنا باشید. در این آموزش نحوه کار با فایل در پایتون (Python File Handling) را بررسی کرده و ترفندهای کاربردی آن را میآموزیم.
آموزش مدیریت فایل در پایتون
مدیریت فایل یک بخش مهم در هر برنامه تحت وب است. پایتون چندین تابع برای ایجاد، خواندن، بروزرسانی و حدف فایل ها دارد.
تابع ()open یک تابع کلیدی برای کار با فایل ها در پایتون است. این تابع دو پارامتر را دریافت می کند: نام فایل و حالت خواندن.
۴ حالت مختلف برای بازکردن فایل وجود دارد.
- “read – “r – فایل را برای خواندن باز می کند
- “Append – “a – فایل را برای نوشتن در انتهای فایل باز می کند. (اگر فایل وجود نداشته باشد، آن را ایجاد می شود)
- “Write – “w – فایل را برای نوشتن ایجاد می کند. (اگر فایل وجود نداشته باشد، آن را ایجاد می کند)
- “Create – “x – فایل را ایجاد می کند. (اگر فایل وجود داشته باشد، خطا می دهد)
علاوه بر این ها باید حالت متن یا باینری بودن فایل را مشخص کنید
- “Text – “t – حالت متن (حالت پیش فرض)
- “Binary – “b – حالت باینری، مانند تصاویر و …
متد های 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()
برای باز کردن یک فایل برای خواندن، مشخص کردن نام فایل کافیست:
f = open("demofile.txt")
کد بالا معادل کد زیر است:
f = open("demofile.txt", "rt")
“r” برای حالت خواندن فایل مشخص شده و “t” نیز نشان می دهد که فایل از نوع متنی (Text) است. همیشه مطمئن شوید که فایل وجود دارد وگرنه با خطا مواجه خواهید شد.
پروژه کار با فایل ها در پایتون
# نوشتن آیتم های لیست در فایل 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
منبع : W3Schools
لیست جلسات قبل آموزش پایتون
- آموزش برنامه نویسی پایتون؛ شروع کار و ساخت اولین برنامه با پایتون
- متغیرها در برنامه نویسی پایتون
- کار با اعداد در برنامه نویسی پایتون
- آموزش کار با رشته ها در برنامه نویسی پایتون
- آموزش عملگرها در برنامه نویسی پایتون
- آموزش کار با لیست ها در برنامه نویسی پایتون
- آموزش کار با Tuple در برنامه نویسی پایتون
- آموزش دیکشنری در برنامه نویسی پایتون
- آموزش دستورات شرطی در برنامه نویسی پایتون
- آموزش حلقه های تکرار در برنامه نویسی پایتون
- آموزش توابع در برنامه نویسی پایتون
- آموزش Lambda در برنامه نویسی پایتون
- آموزش آرایه ها در برنامه نویسی پایتون
- آموزش شی گرایی در برنامه نویسی پایتون
- آموزش ماژول ها در برنامه نویسی پایتون
- آموزش کار با تاریخ و زمان در برنامه نویسی پایتون
- آموزش JSON در برنامه نویسی پایتون
راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.
- منبع : سورس باران
- رمز فايل : www.sourcebaran.com
- انتشار: ۵ مرداد ۱۴۰۱
دسته بندی موضوعات
- آموزش برنامه نویسی
- آموزش کریپتو کارنسی (ارز دیجیتال)
- آموزش متنی برنامه نویسی
- پروژه برنامه نویسی
- فروشگاه
- فیلم های آموزشی
- #F
- ++C
- 3ds max
- Ada
- ADO.NET
- Adobe Flash
- Agile
- Ajax
- AngularJS
- Anime Studio
- apache
- ARM
- Asp.Net
- ASP.NET MVC
- assembly
- AVR
- Azure
- Bootstrap
- Cassandra
- CCNA
- CCNP
- CCSP
- ChatGPT
- Cisco
- CMD
- COBOL
- CSS
- Cython
- Django
- Dreameaver
- Elixir
- EntityFramework
- Erlang
- Flash
- Go
- Groovy
- Haskell
- Htaccess
- HTML
- IOS
- Jade
- jquery
- Kendo UI
- Linq
- Linux
- LUA
- MariaDB
- maya
- Meteor
- MongoDB
- Mono Android
- MonoGame
- Mysql
- NoSQL
- Oracle
- Orchard
- Perl
- php
- PHPMyAdmin
- R
- Rational Rose
- Ruby
- Rust
- Scala
- Scrum Master
- SFML
- SharePoint
- SignalR
- silver light
- SQL Server
- Stimulsoft Reports
- Telerik
- UML
- VB.NET&VB6
- Vue 3
- WPF
- Xml
- آردوینو
- آموزش های پروژه محور
- آیونیک
- اتوکد
- الگوریتم تقریبی
- الگوریتم نویسی و فلوچارت
- امنیت
- اندروید
- اندروید استودیو
- انیمیشن سازی
- بازی سازی با Scratch
- بک ترک
- بیسیک فور اندروید
- پایتون
- پرولوگ
- پریمیر
- جاوا
- جاوا اسکریپت
- جنگو
- جوملا
- دارت
- دلفی
- دوره های رایگان پیشنهادی
- زامارین
- سئو
- ساخت CMS
- ساخت اتوران
- ساختمان داده ها
- سی شارپ
- شبکه و مجازی سازی
- طراحی الگوریتم
- طراحی بازی
- طراحی وب
- فتوشاپ
- فریم ورک codeigniter
- فلاتر
- کاتلین
- کامپایلرها
- کانستراکت
- کریستال ریپورت
- کلوژر
- گوگل آنالیتیکس
- گیت
- لاراول
- مای بی بی
- مایکروسافت پروجکت
- متریال دیزاین
- متلب
- معماری کامپیوتر
- مهندسی اینترنت
- میکروتیک
- نود جی اس
- نیوک
- هوش مصنوعی
- ویبولوتین
- ویژوال استودیو
- یونیتی
- کتاب های آموزشی
- Ada
- Ajax
- Android
- ASP.NET
- ASP.NET Core
- AVR
- clips
- CNC
- COBOL
- CQRS
- Cython
- Dreamweaver
- Elixir
- Entity Framework 4.0
- Erlang
- Go
- Groovy
- Haskell
- LINQ
- Lua
- Matlab
- MFC
- Node.js
- PERL
- php
- PLC
- Prolog
- React
- Rust
- Scala
- SFML
- SharePoint
- silver light
- VHDL
- VMware
- WinJS
- Workflow
- WPF
- XHTML
- Yii Framework
- اتوکد
- اچ تی ام ال
- اسمبلی
- اکتیو ایکس
- الگوریتم و فلوچارت
- انگولار
- اوبونتو
- اوراکل
- بازی سازی
- بانک اطلاعاتی
- برنامه نویسی سوکت
- برنامه نویسی موبایل
- بک ترک
- پاسکال
- پایان نامه
- پایتون
- پرولوگ
- جاوا
- جاوا اسکریپت
- جی کوئری
- حوملا
- داده کاوی
- دلفی
- رباتیک
- روبی
- زبان ماشین
- سئو
- ساختمان داده ها
- سایر کتاب ها
- سخت افزار
- سوئیفت
- سی اس اس
- سی پلاس پلاس
- سی شارپ
- سیستم عامل
- سیستم های خبره
- شبکه و مجازی سازی
- شبیه سازی کامپیوتر
- طراحی الگوریتم
- فتوشاپ
- فریم ورک گتنا
- کاتلین
- کالی لینوکس
- کریستال ریپورت
- گزارش کارآموزی
- گوگل
- لیسپ
- متلب
- مقاله
- مهندسی نرم افزار
- نیوک
- هوش مصنوعی
- وب مستر
- ویژوال بیسیک
- نرم افزار و ابزار برنامه نویسی
- وردپرس