« بسم الله الرحمن الرحیم »
حال دراین قسمت به پیاده سازی وکاربا فایل نوت پد در زبان پایتون همراه با فیلم پرداخته می شود.
اولین سوالی که پیش می آید کاربرد هر بخش می باشد ؟
هرکاربردی که پایگاه داده داشته باشد این نوع فایل هم می تواند داشته باشد اماکمی سخت تر اما به بعضی ها که درسیستم های بازیابی اطلاعات استفاده کرده ام اشاره می شود.
ابتدابه توضیح، نوشتن سپس به خواندن در این نوع فایل پرداخته می شود.
:بخش 1
خواندن / نوشتن (حالت رشته):
ابتدا باید با برنامه نوت پد ارتباط برقرار کرد و برای ارتباط برقرار کردن نیازبه :
1- مسیرفایلی که در آن عمل نوشتن/خواندن می شود .
2- نوع نوشتن /خواندن داده می باشد. ذخیره /خواندن داده به صورت های مختلفی مانند رشته، باینری .
3- مجموعه کاراکتری یا encoding که به صورت پیش فرضUTF-8 می باشد.
f=open(“path”,”type”,encoding=’’ ”)
نوشتن:
حال عمل نوشتن در فایل نوت پد انجام می شود.
نوشتن رشته در فایل می باشد.
f=open(“test.txt”,”w”)
اگر فایل وجود نداشته باشد درمسیر اجرای مفسر پایتون فایلی با همین نام ساخته می شود.
حال متن “Hello This is a test” در این فایل نوشته می شود.
f.write(“Hello , this is a test”)
خروجی این تابع طول رشته ای است که اضافه می شود.
تازمانی که فایل بسته نشود درفایل متن نوشته نمی شود.
f.close()
اگر باردیگر عمل نوشتن را انجام دهید .یعنی همین روند را تکرار کنید و مقادیر جدید(متن) درفایل بنویسید مقدار قبلی پاک می شود. برای حل این مشکل دربخش آخر توضیح داده می شود.
خواندن:
حال عمل خواندن در فایل نوت پد انجام می شود.
f=open(“test.txt”,”r”)
حال محتوای فایل را خوانده ودر متغیر ذخیره می شود.
حال دوتابع برای خواندن استفاده می شود که خروجی هر کدام متفاوت می باشد.
خروجی تابع را می توان با تابع type بررسی کرد.
R_File_Str=f.read() type(R_file_Str)
خروجی این تابع رشته می باشد.
R_file_list=f.readlines() type(R_file_list)
خروجی این تابع لیست می باشد.
ازهردوتابع نمی توان به طور همزمان استفاده کرد.
#----------------------------------------------------------------
:بخش 2
خواندن / نوشتن (حالت باینری):
نوشتن:
.نمی گیرد encoding نوشتن به صورت باینری، آرگومان
f=open(“test.txt”,”wb”)
نوشتن در باینری فایل ها درمبحثی جدا باید توضیح داده شود.
خواندن:
خواندن فایل حالت باینری .
f_bin=open(“test.txt”,”rb”)
حال محتوای مانند قبل از شی خوانده می شود.
R_File_bin=f.read() type(R_file_bin)
خروجی این تابع باینری می باشد.
#----------------------------------------------------------------
:بخش3
حل مشکل(کاربرد) :
اگر دورشته 1و2 موجود باشد. ابتدا رشته 1 به فایل اضافه می شود و فایل بسته می شود. سپس رشته 2 را می خواهید به فایل اضافه کنید اما رشته 1 ازفایل حذف می شود برای حل این مشکل :
1- ابتدا باید مقدار قبلی را ازفایل بخوانید.
2- مقدار قبلی را بامقدار جدید ترکیب کنید .
3- مقدارجدید(ترکیب) درفایل نوشته می شود.
رشته 1: Hello
رشته 2: This is a test
ارتباط با فایل را با یک تابع در زبان پایتون انجام می شود.
def con(type): f=open(“test.txt”,type) return f
فرض می شود رشته 1 در فایل ازقبل نوشته شده است ومی خواهید مقداررشته 2 رادرفایل ذخیره کنید به شرطی که مقداررشته 1 حذف نشود.
f=con(“r”) str_pre=f.read() f.close()
بعدازخواندن مقدار قبلی، مقدارجدید بامقدارقبلی ترکیب می شود.
str_new=str_pre+” “+”This is a test” f=con(“w”) f.write(str_new) f.close()
-------------------------------------------------
فیلم آموزشی :
http://www.aparat.com/v/y3X5Z
موفق باشید
«به امید خدا»