Enviar pesquisa
Carregar
Object-Oriented-Programming-in-Python
•
0 gostou
•
278 visualizações
B
behnam mohammad karimi
Seguir
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 8
Baixar agora
Baixar para ler offline
Recomendados
Certificate
Certificate
Rasha Bassim
Winds of change from vender lock in to the meta cloud
Winds of change from vender lock in to the meta cloud
Munisekhar Gunapati
Equipment list
Equipment list
jordanwardle66
The digital divide
The digital divide
JoshNeves
Contraseñas
Contraseñas
Erick Trejo Martinez
Cloroplastos
Cloroplastos
luzieneantunes
St. david's day
St. david's day
Geovana Bordin
Juventudes Rurales de Guatemala: Tendencias y realidades
Juventudes Rurales de Guatemala: Tendencias y realidades
PROCASUR América Latina y El Caribe
Recomendados
Certificate
Certificate
Rasha Bassim
Winds of change from vender lock in to the meta cloud
Winds of change from vender lock in to the meta cloud
Munisekhar Gunapati
Equipment list
Equipment list
jordanwardle66
The digital divide
The digital divide
JoshNeves
Contraseñas
Contraseñas
Erick Trejo Martinez
Cloroplastos
Cloroplastos
luzieneantunes
St. david's day
St. david's day
Geovana Bordin
Juventudes Rurales de Guatemala: Tendencias y realidades
Juventudes Rurales de Guatemala: Tendencias y realidades
PROCASUR América Latina y El Caribe
یکی از بزرگترین مشکلات OOP اینه که اتفاق نظر بر سر اینکه OOP دقیقا چه چیزی ه...
یکی از بزرگترین مشکلات OOP اینه که اتفاق نظر بر سر اینکه OOP دقیقا چه چیزی ه...
SaeedAsghari5
حقوق ودستمزد در اكسل
حقوق ودستمزد در اكسل
mostafa zarei
Design Patterns چیست و به چه دردی می خورد؟ (persian)
Design Patterns چیست و به چه دردی می خورد؟ (persian)
Mahmoud Masih Tehrani
How to be a better Developer & Programmer
How to be a better Developer & Programmer
Reza Razavi
(ِData Structures-Java Object oriented Programming Languages)ساختارهای دیتا ...
(ِData Structures-Java Object oriented Programming Languages)ساختارهای دیتا ...
Muhibullah Aman
Sql tuning
Sql tuning
mehrdadkarami3
مبانی تعیین نیازمندی ها و الزامات
مبانی تعیین نیازمندی ها و الزامات
ali rasouli
7 ترفند ضروری و موردنیاز در اکسل 2013
7 ترفند ضروری و موردنیاز در اکسل 2013
Yaas Arghavani System Engineering (ICT Subsidiary of Mellat Bank)
Docker
Docker
AlirezaGoshayesh
S1
S1
saaheh
Pg autoscaling in ceph
Pg autoscaling in ceph
Yashar Esmaildokht
تیم پراکنده چیست؟
تیم پراکنده چیست؟
zohreh ahmadi
Scalable javascript application - طراحی نرم افزارهای مقیاس پذیر با جاوا اسکریپت
Scalable javascript application - طراحی نرم افزارهای مقیاس پذیر با جاوا اسکریپت
efazati
آشنایی با زبان جاوا - مقدماتی اندروید
آشنایی با زبان جاوا - مقدماتی اندروید
Sadegh Ghanbari Shohani
AngularJS
AngularJS
Ali Bayat علی بیات
rbdmap in ceph
rbdmap in ceph
Yashar Esmaildokht
how enable ceph dashboard
how enable ceph dashboard
Yashar Esmaildokht
Content strategy
Content strategy
Shayan Shalileh
Clojure se-radio.net Interview with Rich Hickey (ترجمه مصاحبه رادیو مهندسی نر...
Clojure se-radio.net Interview with Rich Hickey (ترجمه مصاحبه رادیو مهندسی نر...
Jahan Zinedine
Introduction to design pattern
Introduction to design pattern
Reza Rahimy
Mais conteúdo relacionado
Semelhante a Object-Oriented-Programming-in-Python
یکی از بزرگترین مشکلات OOP اینه که اتفاق نظر بر سر اینکه OOP دقیقا چه چیزی ه...
یکی از بزرگترین مشکلات OOP اینه که اتفاق نظر بر سر اینکه OOP دقیقا چه چیزی ه...
SaeedAsghari5
حقوق ودستمزد در اكسل
حقوق ودستمزد در اكسل
mostafa zarei
Design Patterns چیست و به چه دردی می خورد؟ (persian)
Design Patterns چیست و به چه دردی می خورد؟ (persian)
Mahmoud Masih Tehrani
How to be a better Developer & Programmer
How to be a better Developer & Programmer
Reza Razavi
(ِData Structures-Java Object oriented Programming Languages)ساختارهای دیتا ...
(ِData Structures-Java Object oriented Programming Languages)ساختارهای دیتا ...
Muhibullah Aman
Sql tuning
Sql tuning
mehrdadkarami3
مبانی تعیین نیازمندی ها و الزامات
مبانی تعیین نیازمندی ها و الزامات
ali rasouli
7 ترفند ضروری و موردنیاز در اکسل 2013
7 ترفند ضروری و موردنیاز در اکسل 2013
Yaas Arghavani System Engineering (ICT Subsidiary of Mellat Bank)
Docker
Docker
AlirezaGoshayesh
S1
S1
saaheh
Pg autoscaling in ceph
Pg autoscaling in ceph
Yashar Esmaildokht
تیم پراکنده چیست؟
تیم پراکنده چیست؟
zohreh ahmadi
Scalable javascript application - طراحی نرم افزارهای مقیاس پذیر با جاوا اسکریپت
Scalable javascript application - طراحی نرم افزارهای مقیاس پذیر با جاوا اسکریپت
efazati
آشنایی با زبان جاوا - مقدماتی اندروید
آشنایی با زبان جاوا - مقدماتی اندروید
Sadegh Ghanbari Shohani
AngularJS
AngularJS
Ali Bayat علی بیات
rbdmap in ceph
rbdmap in ceph
Yashar Esmaildokht
how enable ceph dashboard
how enable ceph dashboard
Yashar Esmaildokht
Content strategy
Content strategy
Shayan Shalileh
Clojure se-radio.net Interview with Rich Hickey (ترجمه مصاحبه رادیو مهندسی نر...
Clojure se-radio.net Interview with Rich Hickey (ترجمه مصاحبه رادیو مهندسی نر...
Jahan Zinedine
Introduction to design pattern
Introduction to design pattern
Reza Rahimy
Semelhante a Object-Oriented-Programming-in-Python
(20)
یکی از بزرگترین مشکلات OOP اینه که اتفاق نظر بر سر اینکه OOP دقیقا چه چیزی ه...
یکی از بزرگترین مشکلات OOP اینه که اتفاق نظر بر سر اینکه OOP دقیقا چه چیزی ه...
حقوق ودستمزد در اكسل
حقوق ودستمزد در اكسل
Design Patterns چیست و به چه دردی می خورد؟ (persian)
Design Patterns چیست و به چه دردی می خورد؟ (persian)
How to be a better Developer & Programmer
How to be a better Developer & Programmer
(ِData Structures-Java Object oriented Programming Languages)ساختارهای دیتا ...
(ِData Structures-Java Object oriented Programming Languages)ساختارهای دیتا ...
Sql tuning
Sql tuning
مبانی تعیین نیازمندی ها و الزامات
مبانی تعیین نیازمندی ها و الزامات
7 ترفند ضروری و موردنیاز در اکسل 2013
7 ترفند ضروری و موردنیاز در اکسل 2013
Docker
Docker
S1
S1
Pg autoscaling in ceph
Pg autoscaling in ceph
تیم پراکنده چیست؟
تیم پراکنده چیست؟
Scalable javascript application - طراحی نرم افزارهای مقیاس پذیر با جاوا اسکریپت
Scalable javascript application - طراحی نرم افزارهای مقیاس پذیر با جاوا اسکریپت
آشنایی با زبان جاوا - مقدماتی اندروید
آشنایی با زبان جاوا - مقدماتی اندروید
AngularJS
AngularJS
rbdmap in ceph
rbdmap in ceph
how enable ceph dashboard
how enable ceph dashboard
Content strategy
Content strategy
Clojure se-radio.net Interview with Rich Hickey (ترجمه مصاحبه رادیو مهندسی نر...
Clojure se-radio.net Interview with Rich Hickey (ترجمه مصاحبه رادیو مهندسی نر...
Introduction to design pattern
Introduction to design pattern
Object-Oriented-Programming-in-Python
1.
در گرا شیئ
نویسی برنامهپایتون )Object Oriented Programming-OOP( .بپردازیم گرا شیئ نویسی برنامه مفهوم مورد در کاوش به داریم قصد مقاله این در OOPسسیسکدنوی سسودب سسدیخواه سسادرق آن سساهیمفم از سسیقعمی درک به رسیدن صورت در شما و است کدهایتان مدیریت برای قدرتمند راهی .بخشید بهبود را خود ( نویسی برنامه ) ؟ چیست گرا شیئ نویسی برنامه حقیقت در شد.اما طراحی گرا شیئ نویسی برنامه زبان یک صورت به ابتدا از پایتون"گرایی شیئمعناست؟ چه به " قالب در را آن کنید سعی و بنشینید صحبت به آن مورد در ساعت چندین برای میتوانید شما و دارد وجود عبارت این برای گوناگونی تعابیر روی را سسریعس سسرورم یک میکنم سعی اینجا در من که دهید.هرچند شرح سازی پیاده در ها کاری ریزه و ها تفاوت بیان با و پیچیده عبارات .باشم داشته شما برای مفاهیم این به نسبت هستیم آنها روی بر کار حال در ما که اشیائی ، آن اساس بر که است نویسی برنامه دنیای در مفهوم یک گرایی شیئ ، کلی طور به .باشند می برخوردار بیشتری اهمیت از اشیاء این دستکاری برای نیاز مورد منطق سسنیا سسردنک سسالبدن با توان می که شود می مشاهده ها دستورالعمل از ای مجموعه یا و دستورالعمل یک صورت به برنامه یک سنتی طور به یک اجرای و تکمیل مراحل مشخص ترتیب یک در ها دستورالعمل"وظیفه.پیمود انتها تا ابتدا از را “ سسامن سساب رویکرد آید.این می شمار به حیاتی نیازی ساده های برنامه از بسیاری در حتی و باشد درست میتواند نیز امروزه رویکرد این"سسامهنبر ای رویه نویسی.میشود شناخته ” درک سسلبغیرقا و سسدهیتن سسمهدر سسیارسب آن نوشتن ای رویه برای لزم منطق ، میشود تر پیچیده و بزرگتر برنامه که هنگامی ، دیگر عبارتی به .بیاید شما کمک به مواردی چنین این در میتواند گرا شیئ نویسی برنامه رویکرد میشود.گاهی سسایه سستورالعملسد از سسمتیسق سسنیهمچن و سساه داده و سساتعاطل سسرایب هایی ظرف عنوان به تنها اشیاء از اینکه جای به گرا شیئ رویکرد در .میدهیم قرار نویسی برنامه فرایند کانون در را آنها ، شود استفاده ای رویه از میکنیم.سپس مشخص را اجزا سایر با آن ارتباط چگونگی نیز و میپردازیم کنیم کار آن روی میخواهیم که شیئی تعریف به ما اول قدم در .شود اجرا درستی شکل به برنامه تا ، میبخشیم جان و جسم آن به منطق طریق سسطسب را سساه سسحبتص سسنیا سسمارشش سسلبقا سسیاءشا تمام مورد در بتوانم باید که است این معنی به میکنم صحبت اشیاء مورد در من که وقتی ) ”شخص یک به میتواند شیئ دهم.یک"میشود مشخص غیره و آدرس ، سن ، نام نظیر هایی ویژگی ی وسیله به که”سسرکتش سسکی سسای و (" )میشود تعریف آن مشابه چیزهای و کارمندان تعداد نظیر ، هایش ویژگی وسیله به کهبسسسیار مفاهیمی به میتواند حتی .باشد داشته اشاره ( .کند اشاره رایانه یک کاربری واسط در دکمه یک مانند انتزاعی سستقو آن سسرایب را سسبش سسلک سسدیبا سسورتص این در چون دهم پوشش مفصل طور به را شده بحث مفاهیم تمامی که ندارم قصد من اینجا در در سسراگ شیئ نویسی برنامه شروع برای نیاز مورد ی ساده مفاهیم از عمیقی درک ها آموزش این پایان در بتوانید شما که امیدوارم بگذارم.اما
2.
سسنیا سسرب.سستندسه مشابه
نسبتا نویسی برنامه های محیط از بسیاری در فوق مفاهیم که است این قضیه این مثبت ی جنبه .کنید پیدا پایتون .بود خواهد راحت دیگر زبان به زبان یک از مهاجرت اساس : کار به آغاز سساب سسواهیمخمی که است اشیائی تعریف ، دهید انجام باید گرا شیئ نویسی برنامه در که کاری اولین ، کردم اشاره قبل قسمت در که همانطور سسکی سسالبق در مربوطه شیئ های ویژگی کردن تعریف ، برمیداریم کار این انجام برای ما که قدمی کنیم.اولین کار آنها"کلسسسماش.سستسا ” سسره .سسودش سساختهس آن روی از است قرار که شیئی برای راه ی نقشه و راهنما یک بگیرید.یعنی نظر در قالب یا الگو یک همانند را کلس یک سسارترف سسودخ سسرایب سسکی هر کلس یک روی از شده ساخته شیئ چند میبرد.اما ارث به را آن های ویژگی و است کلس یک به متعلق شیئ .داشت خواهند مستقلی اسم به کلسی است ممکن شما ، ساده مثال یک عنوان بهpersonاسسست ممکسسن همچنین .باشید داشته نام و سن مانند هایی ویژگی با و ) کلس این از ای نمونهکلس از شیئ یکسسخصش سسنیا سسامن.بود خواهد جامعه در یکتا شخص یک مبین صورت این در که باشید ساخته ( میتواندAndyاو سن و۲۳کلس همین از نیز دیگری شخص میتوانید شما باشد.اما سالpersonمثل او نسسام که کنید سازی شبیهLucy و باشد۱۸.باشد داشته سن سال خط چند نوشتن به شروع جدی صورت به دهید اجازه پس .بود خواهد سخت زمینه این در تمرین چند دیدن بدون مسائل این فهم حقیقتا .کنیم کد : کل س تعریف سستغل از سسایتونپ نویسی برنامه مدل ترین ساده اساس بر کلس یک تعریف برای ماclassکلس سسامن آن سسالبدن سسهب سسهک سسمیمیکن سستفادهسا .آوریم می را جدیدمان نام به جدید کلس یک میخواهم اینجا در منpet.بسازم سسردیگ سسرارق کلس سسفیتعر ی محدوده درون که چیز هر آن از پس و میدهیم قرار کلس نام انتهای در را ( : ) کالن علمت یک بلفاصله ما ی سسهمکل سسالبدن سسهب سسورتص سسره در سسهک کنید دار(.توجه دندانه صورت بیاید)به فاصله خالی جای یک با بایدclassسستهشنو سستزینپرا سسچیه : نمیشود class pet: جفت یک بیایید شروع میرود.برای شمار به ای استفاده بی موجود ندهیم قرار آن درون چیزی که زمانی تا اما داریم کلس یک الن ما خب ).کنید تعریف کلس درون آسانی به را متغییر تعدادی میتوانید کار این دهیم.برای نسبت آن به ویژگیعددی متغییر یک کار این برای من میگیرم نظر در خانگی حیوان پاهای تعداد شمارشگر عنوان به راسستیحرا سسهب سسهک سسودش انتخاب باید ای گونه به متغییر اسم همیشه مانند .( را آن اسم دهید اجازه .آورید دست به متغییر مورد در اطلعاتی بتوانیدnumber_Of_edgeسساصصاخت آن سسهب مقدار یک باید الن .بگذاریم .میکنیم دریافت خطا یک وگرنه دهیم مقدار از اینجا من۰)میکنم استفادهمثل نسسدارد اهمیت زیاد ندارند یکسانی پاهای تعداد خانگی حیوانات تمام اینکه به توجه مورد این در– دهیم تغییر را متغییر مقدار کلس این از نمونه هر برای که مجبوریم ما صورت هر در نیستند برابر سگ و ماهی پاهای تعداد–.( class pet: number_of_legs = 0
3.
: متغییر عناصر
و ها نمونه ان سستکاریسد سسهب سسپسس و سساختهس را آن از سسونهمن سسکی سسوریمبمج سسداتاب در یعنی .کرد کار مستقیم صورت به کلس یک با نمیتوان معمول .بپردازیم .دهیم قرار متغییر یک درون را شده ساخته ی نمونه توانیم می ) کلس خارج در بیاییدکلس دار دندانه ساختار از بیرون یعنینام به متغییری درون را نمونه (dougسسساخت بسسرای راحتی به .دهیم قرار .دهید قرار پرانتز جفت یک آن دنبال به و کنید تایپ را آن نام ، کلس از جدید ی نمونه یک سساختس ی سسهظلح در سسهک ست راهی این ، توابع همانند که دید خواهید بعدا چون باشید پرانتزها از استفاده نگران نیست لزم اینجا در البته .فرستاد آن متغییرهای به را مقادیری میتوان کلس از نمونه class pet: number_of_legs = 0 doug = pet() کلس از نمونه یک الن ماpetایم؟ کرده پیدا را آن های ویژگی در دستکاری توانایی الن داریم.آیا را )است شیئ کدام منظورمان بگوییم پایتون به باید ابتدا در شیئ یک خصوصیات به اشاره برایکلس از نمونه کدام یاایسسن در مسسا (.بنابراین کردن تایپ با را خود کار ، مثالdougبه دسترسی قصد کنیم مشخص تا قرارمیدهیم نقطه یک آن از میکنیم.بعد شروع است نمونه نام که ی نمونه محتویات از یکیdougداده انجسسام درست را فوق مراحل تمام آوریم.اگر می را خود موردنظر خصوصیت نام ، نقطه از داریم.پس را : باشد جلویتان چیزی همچین الن باید باشید doug.number_of_legs میخواهم الن کنیم.من تکرار نیز متغییرهایمان سایر برای مشابه طور به را کار این میتوانیم ماdougکنم دهی مقدار سگ یک عنوان به را مقدار آن متغییر به و۴)بدهمدارای سگ چون۴باشد می پا( : شویم مطمئن کارمان صحت از تا بنویسیم مان خانگی حیوان پاهای تعداد چاپ برای کد خط یک هم کار پایان در باشید موافق اگر class pet: number_of_legs = 0 doug = pet() doug.number_of_legs = 4 print "Doug has %s legs." % doug.number_of_legs کلس کد شد.این خواهد داده نمایش شما برای نظر مورد خروجی که میبینید کنید اجرا را فوق کد اگرpetسسونهمن سسکی ، میکند تعریف را متغییر درون را آن و میسازد آن ازdougسساب را آن ی سسردهب ارث سسهب خاصیت و میرود شده ایجاد ی نمونه درون به سپس و میکند ذخیره۴ ).میکند مقداردهیخاصیتnumber_of_legsاست شده برده ارث به اصلی کلس از( .است ساده بسیار نیز آن از استفاده که بسازید ای پیمانه ی داده ساختمان یک توانستید کاربردی ی ساده مثال این طریق از شما : منطق معرفی بسسه ها کلس از تر جدی صورت به میخواهیم اینجا در اما اید شده آشنا اشیاء و ها کلس مفاهیم ترین اساسی با شما تاکنون !!! خوب بسیار و سسازیس سسادهیپ سسهب بخواهیم اگر اما هستند عالی و خوب همگی اینها .کنیم استفاده متغییرها برای هایی ظرف یا و ها داده ساختمان عنوان
4.
کار این برای
کنیم.ما حاکم ها کلس و اشیاء روی بر را کلی منطقی بتوانیم که داریم احتیاج راهی به ، بپردازیم تری پیچیده وظایف اجرای .میکنیم استفاده متدها از اسسست تابع یک تعریف مشابه دقیقا متدها این تعریف ی میگیرند.شیوه قرار ها کلس درون که تفاوت این با هستند توابع همان متدها اساسا را سسدیتم سسدیبخواه سسماش سساهگهر .سسندشبا کلس یک به متعلق واقع در و شوند تعریف کلس یک درون باید که جاست این آن فرق البته که متغییرهسسا بسسه دسترسی برای قبل که حالتی مشابه دقیقا .کنید رجوع موردنظر کلس از شیئ یک به ابتدا که هستید مجبور کنید فراخوانی .کردیم بیان کلس سسانمه سسوردم در سساهتکو سسالثم یک قضیه این شرح برای منpetسسامن سسهب کلس سسکی سسدیسسم.بیاینمیزsleepسسنیاول در سسهک سسازیمسب لغت ، توابع تعریف ی شیوه همانند .میکند چاپ خروجی در را پیغام یک اش فراخوانیdefسسامن آن سسالبدن سسهب سسپسس .مینویسم ابتدا در را و نویسیم می را کالن علمت هم آخر در و میدهیم قرار بسته و باز پرانتز جفت یک ادامه داریم.در را آن ساخت قصد که آوریم می را متدی .میکنیم شروع را جدیدی خط ، بعدی سطر به رفتن با .بیاید بالیی سطح به نسبت دار دندانه صورت به باید حتما گیرد قرار متد درون است قرار که چیزی هر معمول مطابق نام به آرگومان یک باید همیشه ، ی همیشه ، ی همیشه متد : شود می آشکار تابع و متد دیگر تفاوت اینجا درselfداشته پرانتز دو مابین سسدتم سسهب سسانمآرگو سسنیاول عنوان به را فعلی شیئ که است این افتد می که اتفاقی ، میکند فراخوانی را متد پایتون که باشد.هنگامیsleep ).میکند ارسالمیدهد پاس( سسامن سساب سسانیمآرگو سسهشهمی سسدتم یک به که است نکته این به توجه بدانید الن است لزم که آنچه اما فهمید خواهید بعدا را مطلب این دلیل self).شود می الصاق آرگومان اولین عنوان بهسسریگدی از سسسپ سسیکی را سساهآن سسدیمیتوان سسدیکن اضافه بیشتری های آرگومان که بخواهید اگر است چندگانه های آرگومان دارای توابع مشابه دقیقا کار این و بیاوریدیسسک برنسسامه اجرای زمان در ، نکنید الصاق را آرگومان این شما اگر .( )میدهد پاس متد به را کنونی شیئ پایتون که است این دلیل .کرد خواهید دریافت خطاآرگومانself“ :میدهد پاسخ متد و (!!!آقسسا آهای !میکنی؟ چیکار داری که میدونی بگیرم.اصل تحویل شما از را آرگومانی هیچ نیست قرار منبخواهید که است حالتی مشابه دقیقا هم این .“ .پذیرد نمی آرگومانی هیچ که دهید پاس تابعی به را آرگومانی :ببنید میتوانید ایم داده انجام تاکنون که را آنچه هر اینجا در class pet: number_of_legs = 0 def sleep(self): doug = pet() عبارتprint: مینویسیم متد ی بدنه داخل اینگونه را class pet: number_of_legs = 0 def sleep(self): print "zzz" doug = pet() کلس ی نمونه یک طریق از آسانی به توانیم می ، کنیم استفاده متد این از بخواهیم اگر حالpetسسابهشم .سسیمشبا سستهشدا سسیسدستر آن به متغییر با که کاریnumber_of_edge) نویسیم می را نمونه نام ابتدا ، دادیم انجاماینجا درdougمتسسد نام آخر در و ( . ) نقطه سپس ، ( متد ما است درست که باشید داشته آن.توجه پرانتزهای همراه بهsleepسسورتص سسهب سسایتونپ سساما سسمیمیکن فراخوانی آرگومانی هیچ بدون را آرگومان با را پرانتز داخل خودکارself.میکند پر
5.
class pet: number_of_legs =
0 def sleep(self): print "zzz" doug = pet() doug.sleep() پیغام میتوانید کنید اجرا را کد اگرzzz.کنید مشاهده خروجی ی صفحه در را : ها داده سسقیطر از سسوانیمتمی سسورطچ که آموزد می ما به متد دهد؟این نشان را خانگی حیوان پاهای تعداد که بنویسیم را جدیدی متد چیست نظرتان درون های داده دستکاری به متدهاclassسسانمآرگو آن از سستفادهسا سسهب سسزملم سسام سسراچ سسهک میدهد نشان بپردازیم.همچنینselfسسذاییک نام با را جدیدمان متد هستیم.بیاییدcount_legs.بسازیم آرگومان که اینجاستselfسسریمتغی از سستیمسمیخوا سسهک سستیقو سسدیدار سسادی به .شود می عمل واردnumber_of_legsکلس از سسارجخ در نوشتن جای به بودیم مجبور ، کنیم استفادهnumber_of_lengsبنویسیم ،doug.number_of_legsما که است این کاربردی ؟جواب .کنیم اقدام کلس آن ی شده ساخته ی نمونه طریق از ، کلس از متغیر یک محتویات از استفاده برای مجبوریم ) شود می استفاده ها نمونه از یک کدام توسط اجزا این که نمیدانیم کلس نوشتن هنگام در ما بهرحالزیادی های نمونه است ممکن چون باشد موجود برنامه در کلس یک ازمتغییر از مشکل این حل برای بنابراین .(self.میکنیم استفادهSelfسسست شسسیئی به ارجاع یک تنها سستغل از سسانیسآ به میتوانید شما کنونی کلس متغییر به دسترسی برای هستیم.پس آن روی بر کار مشغول حاضر حال در کهselfسسکی و .کنید استفاده آن از بعد نقطه : زیر مثال مانند class pet: number_of_legs = 0 def sleep(self): print "zzz" def count_legs(self): print "I have %s legs" % self.number_of_legs doug = pet() doug.number_of_legs = 4 doug.count_legs() کاربرد مثال این درselfسساب سسونهمن نام خودکار صورت به ، میکنید متد اجرای به قدام شما وقتی که است این متد داخلselfجسسایگزین که هنگامی شود.بنابراین می()doug.count_legs، میکنیم فراخوانی راselfباdougفراینسسد ایسسن اینکه شرح میشود.برای جایگزین کلس از دیگری ی نمونه ، میکند کار چگونه ای نمونه چند حالت درpetنام بهnemo.میکنیم اضافه برنامه به را class pet: number_of_legs = 0 def sleep(self): print "zzz"
6.
def count_legs(self): print "I
have %s legs" % self.number_of_legs doug = pet() doug.number_of_legs = 4 doug.count_legs() nemo = pet() nemo.number_of_legs = 0 nemo.count_legs() خروجی پیغام ابتدا برنامه این۴سپس و۰.میکند چاپ را مرجع چون است شده نوشته دار دندانه صورت به کامل متد ، روش این درselfسستهشنو سسنتم به کامل و میکند تغییر داینامیکی صورت به .کنیم دستکاری را فعلی شیئ درون متغییرهای که دهد می اجازه ما به تنها و است وابسته شده بجز اسمی هر متدهایتان برای میتوانید شما : نکته یک فقطself.کنید انتخاب ی کلمه از استفادهselfهرچسسه ، مختلف افراد توسط شده نوشته کدهای میشود باعث که است پایتون نویسان برنامه بین ساده توافق یک .بمانید پایبند ها توافق به که است این من شود.نصیحت فهم قابل و استاندارد بیشتر : پیشرفته ویژگی چند سسونهگچ سساهآن سسهک سسبینیمب و سسدازیمنبیا ها کلس ی پیشرفته های ویژگی به نگاهی که ایم آماده و ایم گذاشته سر پشت را مقدمات اکنون ما .کنند کمک ما به یافته ساخت های برنامه طراحی سازی ساده در توانند می کنیم صحبت آن مورد در میخواهم که بعدی مطلب"بری ارثسسایهپ کلس سسکی ی سسایهپ سسرب کلس یک ساخت فرایند به بری است.ارث ” .دهد می را والد مشخصات و ها ویژگی بردن ارث به ی اجازه جدید کلس به که شود می گفته ).باشد داشته را والد متغییرهای و متدها تمامی میتواند جدید کلسشود می گفته -پایه-هم والد کلس به گاهی.( کلس باشد.اگر مفید تواند می حد چه تا تکنیک این که ببینیم تا دهیم گسترش را خود خانگی حیوانات مثال بیاییدpetسسدلوا عنوان به را از بتواند که بسازیم آن ی پایه بر را فرزندی کلس میتوانیم ، بگیریم نظر درpet.کند بری ارث )باشد ماهی یا و سگ مثل هرچیزی میتواند فرزند کلسسسانمه سسدنتوا سسیم سسدنفرز کلس گاهیpetسسایه سسیگویژ دارای سساما سسدنبما سساقیب باشد خود مخصوص.( ).سسدهد سسامجان را میدهد انجام خانگی حیوان یک که را آنچه تمام میتواند و است خانگی حیوان سگ یک، سسوردخمی سسگس سسالثم سسرضف سسهب دارد پا و دست تعدادی و خوابد می.است کرده سگ یک را او که دارد نیز فردی به منحصر های ویژگی اما ( سسانگیخ سساتنحیوا ی همه اما بردارد را چوبی تکه است ممکن سگ .ندارند را ویژگی این خانگی حیوانات ی همه که حالی در ؛ دارد مو سگ .نیستند کار این به قادر .بگذارد نمایش به را سگ یک رفتار که کنیم ایجاد مان برنامه درون کلسی میخواهیم که بازگردیم.گفتیم مطلب اصل به خب متغییرهسسای و متسسدها بسسری ارث از اسسستفاده بسسا میتسسوانpetکلس داد.بنسسابراین ارث جدیسسد کلس بسسه راdougمتغییسسر توانسسد مسسی number_of_legsمتد وsleep.باشد داشته را کلس در متغییرها و متدها این نوشتن بدون ما چگونه که کنید تعجب شما شایدdogاز کامل صورت به را آنهاpetمیگیریم؟
7.
بری ارث۲:میدهد قرار
ما اختیار در را منحصربفرد ویژگی یکنوع از را شیئی بخواهیم اگر :pet.داد انجام را کار این میتوان ، نباشد سگ که صورتی به بسازیم دو)کنیم اضافه را خانگی حیوانات از دیگری نوع بخواهیم شاید :ماهی یک مثلاز بری ارث با نیز را دوم کلس این میتوانیم (ماpetسسسادجای متغییرهای و متدها توانند می جدید های کلس این دوی کنیم.هرpetویژگسسی زمان همان در توانند می همچنین و بگذارند اشتراگ به را سسلبقا سسوندش سسیم سساختهس سسانشخود از سسهک سسیاییشا برای فقط که متغییرهایی و متدها باشند.یعنی داشته نیز را خود اضافی و بفرد منحصر .اند دستیابی سسمسا سسهب سسدییجد کلس سسداتاب سسود.درش تر روشن ماجرا که بنویسیم چیزهایی دهید اجازه شویم.پس قضیه وارد تر عمیق کمی بیاییدdog ارث آن از باید که کلسی نام و دهیم می قرار بسته و باز پرانتز جفت یک کالن علمت و کلس نام بین بار این که تفاوت این .با نویسیم می .میدهیم پاس آن به آرگومان یک صورت به را والد کلس نام ، توابع همانند نویسیم.یعنی می دو آن بین را کنیم بری متد دهد.من شرح برایمان را فرایند این کار طرز تا کنیم می اضافه کلس این به را ای ساده متد ادامه درbarkسسارتبع سسات سسمسنوی سسیم را woooof.کند چاپ را class pet: number_of_legs = 0 def sleep(self): print "zzz" def count_legs(self): print "I have %s legs" % self.number_of_legs class dog(pet): def bark(self): print "Wooooof" ی سسونهمن از سستفادهسا با دوباره !.افتد می اتفاقی چه کلس این از جدید ی نمونه یک ساخت با الن ببینیم بیاییدdougکلس سسهب سسهکdog میکنیم فراخوانی اینگونه را جدید متد ،میکند اشاره:()doug.bark class pet: number_of_legs = 0 def sleep(self): print "zzz" def count_legs(self): print "I have %s legs" % self.number_of_legs class dog(pet): def bark(self): print "Woof" doug = dog() doug.bark() .ایم ساخته آن درون متد یک همراه به کلس یک اینکه بجز ایم نداده انجام جدیدی کار هنوز اما ایم رفته پیش عالی بسیار کار اینجای تا کلس دسترس در متغییرهای و متدها تمام که است این میدهد انجام ما برای بری ارث که کاریpetشیئ وارد راdogبنسسابر میکند.پس : بنویسم اینگونه توانم می ها گفته این
8.
class pet: number_of_legs =
0 def sleep(self): print "zzz" def count_legs(self): print "I have %s legs" % self.number_of_legs class dog(pet): def bark(self): print "Woof" doug = dog() doug.sleep() متد مراحل این از پسsleepشیئ حقیقت در . شود می اجرا درستی بهdougکلس هردو بهpetوdogاز سسانناطمی سسرایب.دارد سسقلتع :میکنیم امتحان را کدها این اند رسیده ارث به متدها مانند هم متغییرها اینکه class pet: number_of_legs = 0 def sleep(self): print "zzz" def count_legs(self): print "I have %s legs" % self.number_of_legs class dog(pet): def bark(self): print "Woof" doug = dog() doug.number_of_legs = 4 doug.count_legs() که ببینید توانید میdougسسد.کلسنا سسدهش سسردهب ارث سسهب درستی به متغییرها که است معنی بدان این و میکند کار درستی به سابق مانند سسایشمن سسهب را خود به مخصوص عملکرد چند که است خود والد از یافته تغییر و منحصربفرد ، ویژه ی نسخه یک ساختیم که جدیدی فرزند .دارد خود با نیز را والد عملکردهای و ها حالت تمامی که حالی در ، میگذارد محمدکریمی بهنام :تنظیم و ترجمه نوروز۹۳ : منبعhttp://code.tutsplus.com/
Baixar agora