در این مطلب، ویدئو برنامه نویسی پایتون 75 – OOP و فایل IO در 10 دقیقه با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:10:46
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,080 –> 00:00:01,520
سلام به همه خوش آمدید، ما قصد
2
00:00:01,520 –> 00:00:03,439
داریم مروری بر برنامه نویسی شی گرا انجام دهیم
3
00:00:03,439 –> 00:00:04,080
4
00:00:04,080 –> 00:00:06,319
که در github من در زیر این
5
00:00:06,319 –> 00:00:07,120
فایل در اینجا وجود دارد
6
00:00:07,120 –> 00:00:10,080
و همچنین آبجکت ها و io که می
7
00:00:10,080 –> 00:00:12,080
توانید در این مورد در اینجا دریافت کنید، بنابراین هشت و نه
8
00:00:12,080 –> 00:00:13,040
بیایید شروع کنیم.
9
00:00:13,040 –> 00:00:14,639
به زمانی که تازه
10
00:00:14,639 –> 00:00:16,239
برنامه نویسی شی گرا را شروع
11
00:00:16,239 –> 00:00:18,960
کردیم، به معنای واقعی کلمه ابتدایی ترین کلاس را ایجاد کردیم
12
00:00:18,960 –> 00:00:19,520
13
00:00:19,520 –> 00:00:21,680
که مطلقاً چیزی در آن تعریف نشده بود
14
00:00:21,680 –> 00:00:24,240
، اما این کلاس هنوز هم می تواند
15
00:00:24,240 –> 00:00:28,000
برای ساختن اشیاء از نوع book استفاده شود،
16
00:00:28,000 –> 00:00:31,359
بنابراین book متغیری است که به یک
17
00:00:31,359 –> 00:00:33,280
شی کتاب اشاره دارد و ما چاپ می کنیم.
18
00:00:33,280 –> 00:00:35,280
و می توانید ببینید که درست در اینجا یک
19
00:00:35,280 –> 00:00:37,920
شی کتاب است و سپس آدرس حافظه
20
00:00:37,920 –> 00:00:39,520
زمانی که نوع کتاب را چاپ می
21
00:00:39,520 –> 00:00:41,120
کنید، می توانید ببینید که از نوع کتاب است،
22
00:00:41,120 –> 00:00:43,360
می توانیم با استفاده از instance نوع آن را به صورت پویا بررسی
23
00:00:43,360 –> 00:00:44,239
24
00:00:44,239 –> 00:00:46,079
کنیم، بنابراین متغیر کتاب را وارد می کنیم و
25
00:00:46,079 –> 00:00:47,680
بررسی می کنیم ببینید آیا از نوع
26
00:00:47,680 –> 00:00:49,600
کتاب است و میتوانید ببینید که میگوید
27
00:00:49,600 –> 00:00:51,199
واقعاً یک کتاب است آن را
28
00:00:51,199 –> 00:00:53,120
با استفاده از این کلاس بخوانید، میتوانید کتابهای متعددی ایجاد کنید،
29
00:00:53,120 –> 00:00:54,719
بنابراین در اینجا کتاب
30
00:00:54,719 –> 00:00:57,680
دوم را ایجاد میکنیم و عنوان آن را تعیین میکنیم و این
31
00:00:57,680 –> 00:00:59,120
جالب است زیرا ما در واقع میتوانیم
32
00:00:59,120 –> 00:01:02,079
ببینیم ویژگیها را بعد از ایجاد
33
00:01:02,079 –> 00:01:03,039
شیء، بنابراین
34
00:01:03,039 –> 00:01:05,280
فقط یک عنوان به این کتاب اضافه میکنیم و
35
00:01:05,280 –> 00:01:06,960
آن عنوان را چاپ میکنیم
36
00:01:06,960 –> 00:01:10,479
و همانجا بیرون میآید،
37
00:01:10,479 –> 00:01:12,400
اما از آنجایی که هر کتاب یک عنوان دارد، منطقیتر است که آن
38
00:01:12,400 –> 00:01:13,760
را به عنوان
39
00:01:13,760 –> 00:01:15,200
بخشی از ساختار
40
00:01:15,200 –> 00:01:17,920
قرار دهیم. به شما نشان می دهد که چگونه با ایجاد
41
00:01:17,920 –> 00:01:18,560
این
42
00:01:18,560 –> 00:01:20,640
روش در اینجا به نام
43
00:01:20,640 –> 00:01:22,400
underscore underscore underscore اولیه انجام دهید
44
00:01:22,400 –> 00:01:24,640
و این به یک پارامتر خود نیاز دارد که
45
00:01:24,640 –> 00:01:25,840
در واقع نیازی نیست چیزی را به آن منتقل
46
00:01:25,840 –> 00:01:27,920
کنیم که به طور ضمنی
47
00:01:27,920 –> 00:01:29,920
به شی اشاره می کند
48
00:01:29,920 –> 00:01:32,640
بنابراین عنوان شی را مانند آن تنظیم می کنیم.
49
00:01:32,640 –> 00:01:33,759
50
00:01:33,759 –> 00:01:35,600
این عنوان در اینجا همان چیزی است که ما در واقع به آن منتقل می کنیم،
51
00:01:35,600 –> 00:01:37,920
بنابراین وقتی کتابی را ایجاد می
52
00:01:37,920 –> 00:01:39,600
کنیم، آن عنوان را می گذاریم و
53
00:01:39,600 –> 00:01:41,439
54
00:01:41,439 –> 00:01:44,159
به عنوان ویژگی روی آن شی اختصاص می یابد، بنابراین ما
55
00:01:44,159 –> 00:01:46,880
می توانیم عنوان کتاب و عنوان کتاب دو را چاپ کنیم
56
00:01:46,880 –> 00:01:49,439
که همین الان به ما این عنوان را می دهد.
57
00:01:49,439 –> 00:01:51,439
اگر سعی کنیم یکی بدون
58
00:01:51,439 –> 00:01:52,079
عنوان ایجاد
59
00:01:52,079 –> 00:01:54,079
کنیم، با خطا مواجه میشویم، به همین دلیل است که
60
00:01:54,079 –> 00:01:55,920
نظر داده شده است،
61
00:01:55,920 –> 00:01:57,360
اگر میخواهید میتوانید آن را پیشفرض نیز قرار دهید،
62
00:01:57,360 –> 00:01:59,439
بنابراین ما آن را به هیچ عنوان پیشفرض قرار دادیم
63
00:01:59,439 –> 00:02:01,280
و در آن شرایط لازم نیست
64
00:02:01,280 –> 00:02:02,640
عنوانی به آن بدهید.
65
00:02:02,640 –> 00:02:06,000
و انجام این کار هیچکدام را چاپ نمی کند
66
00:02:06,000 –> 00:02:07,759
این با تلاش برای به دست آوردن فیلدی
67
00:02:07,759 –> 00:02:08,000
که
68
00:02:08,000 –> 00:02:10,560
وجود ندارد متفاوت است زیرا به عنوان مثال اگر
69
00:02:10,560 –> 00:02:11,520
ما بخواهیم این کتاب را چاپ کنیم.
70
00:02:11,520 –> 00:02:14,959
test شکست می خورد زیرا تست نقطه
71
00:02:14,959 –> 00:02:16,080
وجود ندارد
72
00:02:16,080 –> 00:02:18,319
بنابراین عنوان وجود دارد فقط وجود ندارد یک
73
00:02:18,319 –> 00:02:20,319
مقدار داشته باشد، بنابراین مانند یک تمایز جزئی در
74
00:02:20,319 –> 00:02:21,840
آنجا است، اما فقط مطمئن شوید که
75
00:02:21,840 –> 00:02:23,360
متوجه شده اید که گرفتن
76
00:02:23,360 –> 00:02:25,840
book.title اشکالی ندارد، ما فقط مقدار
77
00:02:25,840 –> 00:02:26,480
none را
78
00:02:26,480 –> 00:02:28,319
دریافت می کنیم و book.test یا هر چیزی
79
00:02:28,319 –> 00:02:30,160
که وجود ندارد و در مرحله بعد به ما خطایی
80
00:02:30,160 –> 00:02:30,640
81
00:02:30,640 –> 00:02:32,400
می دهد. در مورد ایجاد متدهای خودمان در کلاس صحبت کردیم
82
00:02:32,400 –> 00:02:33,760
83
00:02:33,760 –> 00:02:35,680
و برای این کار فقط یک تابع مانند معمول تعریف می
84
00:02:35,680 –> 00:02:36,800
85
00:02:36,800 –> 00:02:41,280
کنیم و پارامتر خود ضمنی را
86
00:02:41,280 –> 00:02:44,400
در لیست پارامترها قرار می دهیم در اینجا یک
87
00:02:44,400 –> 00:02:46,160
متد log ایجاد کردیم که فقط روی کنسول چاپ می
88
00:02:46,160 –> 00:02:48,080
شود که ما نیز
89
00:02:48,080 –> 00:02:50,800
یک متد کوتاه انجام دادیم. که
90
00:02:50,800 –> 00:02:53,440
بسته به طولانی بودن کتاب درست یا نادرست چاپ می شود،
91
00:02:53,440 –> 00:02:56,160
بنابراین وقتی کتابی 72 صفحه ای ایجاد می
92
00:02:56,160 –> 00:02:57,040
93
00:02:57,040 –> 00:02:59,680
کنیم و بررسی می کنیم که آیا کوتاه است،
94
00:02:59,680 –> 00:03:01,040
می گوید کتاب را بخوانید
95
00:03:01,040 –> 00:03:03,040
زیرا در واقع کمتر از 100
96
00:03:03,040 –> 00:03:04,080
صفحه است پس
97
00:03:04,080 –> 00:03:06,319
به همین دلیل می گوید بخوانید. ب اینجا را ببینید
98
00:03:06,319 –> 00:03:08,000
، من کد دیگری را در اینجا دریافت کردم،
99
00:03:08,000 –> 00:03:10,319
اما هیچ چیز خیلی مهمی
100
00:03:10,319 –> 00:03:12,080
که اکنون انجام می دهیم این است که به
101
00:03:12,080 –> 00:03:13,360
متغیرهای سطح کلاس نگاه کنیم
102
00:03:13,360 –> 00:03:16,080
و در این شرایط متغیرها به
103
00:03:16,080 –> 00:03:16,879
104
00:03:16,879 –> 00:03:19,680
سطح کلاس گره خورده اند و در این
105
00:03:19,680 –> 00:03:21,440
وضعیت متغیرها از طریق قابل دسترسی هستند. کلاس
106
00:03:21,440 –> 00:03:22,000
107
00:03:22,000 –> 00:03:24,319
بنابراین به عنوان مثال من این لیست علاقه مندی ها را
108
00:03:24,319 –> 00:03:25,840
دارم، می توانید
109
00:03:25,840 –> 00:03:28,799
با گفتن book dot faves به آن دسترسی پیدا کنید و سپس می توانیم
110
00:03:28,799 –> 00:03:30,080
داده ها را به آن اضافه کنیم،
111
00:03:30,080 –> 00:03:32,560
مانند جایی که چاپ کتاب و کتاب
112
00:03:32,560 –> 00:03:34,239
دو را اضافه
113
00:03:34,239 –> 00:03:36,000
می کنیم و این خروجی پیش فرض
114
00:03:36,000 –> 00:03:38,080
را در اینجا دریافت می کنیم که به اولین اشاره دارد.
115
00:03:38,080 –> 00:03:40,080
شیء کتاب و این دومین شی کتاب
116
00:03:40,080 –> 00:03:41,519
117
00:03:41,519 –> 00:03:43,599
بعدی است که در مورد نحوه جایگزینی
118
00:03:43,599 –> 00:03:46,159
آن خروجیهای پیشفرض با یک جدید صحبت میکنیم و
119
00:03:46,159 –> 00:03:47,200
آن استفاده
120
00:03:47,200 –> 00:03:50,319
از str نادیده گرفته میشود، به طوری که در
121
00:03:50,319 –> 00:03:51,519
اینجا به این شکل در میآید
122
00:03:51,519 –> 00:03:53,599
که در واقع عنوان
123
00:03:53,599 –> 00:03:54,799
و تعداد صفحات
124
00:03:54,799 –> 00:03:56,640
را برمیگردانیم. ما در آن هستیم، همچنین روش برابر را جایگزین می
125
00:03:56,640 –> 00:03:58,840
کنیم که
126
00:03:58,840 –> 00:04:01,120
فیلدهای self.title برابر با
127
00:04:01,120 –> 00:04:02,000
other.title است
128
00:04:02,000 –> 00:04:04,239
و self.pages برابر با سایر صفحات نقطه است
129
00:04:04,239 –> 00:04:05,040
130
00:04:05,040 –> 00:04:06,720
اگر همه آنها مطابقت داشته باشند،
131
00:04:06,720 –> 00:04:08,640
در غیر این صورت true را برمی گردانیم. بازگشت نادرست
132
00:04:08,640 –> 00:04:09,840
من نمیخواهم در این بررسی زیاد وارد آن شوم،
133
00:04:09,840 –> 00:04:11,120
زیرا اطلاعات زیادی بود،
134
00:04:11,120 –> 00:04:12,959
بنابراین اگر میخواهید
135
00:04:12,959 –> 00:04:14,480
به ویدیوی من در مورد هش کردن نگاه کنید،
136
00:04:14,480 –> 00:04:16,478
اما برای این کلاس احتمالاً فقط
137
00:04:16,478 –> 00:04:18,720
با این زیرخط زیر خط میروم.
138
00:04:18,720 –> 00:04:21,120
خط زیر خط هش برابر با هیچ است
139
00:04:21,120 –> 00:04:23,360
که این فقط به صراحت بیان می کند که
140
00:04:23,360 –> 00:04:24,240
اشیاء کتاب
141
00:04:24,240 –> 00:04:26,320
برای هش کردن
142
00:04:26,320 –> 00:04:28,000
ساختارهای داده استفاده نمی شوند و شما نمی توانید هش شی را به درستی دریافت کنید،
143
00:04:28,000 –> 00:04:29,919
سپس
144
00:04:29,919 –> 00:04:31,520
چند نمونه دیگر را مرور می کنیم که در آن اکنون
145
00:04:31,520 –> 00:04:33,440
یک کتاب می گیریم و ما آن را چاپ می کنیم و
146
00:04:33,440 –> 00:04:35,759
خروجی ای را که ایجاد کرده ایم دریافت می کنیم
147
00:04:35,759 –> 00:04:37,440
که عنوان کتاب و تعداد صفحات
148
00:04:37,440 –> 00:04:38,880
طولانی است،
149
00:04:38,880 –> 00:04:41,680
همچنین می توانیم کتاب ها را با هم مقایسه کنیم تا کتاب دیگری داشته باشیم که
150
00:04:41,680 –> 00:04:42,080
151
00:04:42,080 –> 00:04:44,720
یک شی کتاب متفاوت است و همان
152
00:04:44,720 –> 00:04:45,600
153
00:04:45,600 –> 00:04:48,240
داده ها درست در نظر گرفته می شوند.
154
00:04:48,240 –> 00:04:49,600
155
00:04:49,600 –> 00:04:51,919
می توانید بررسی کنید که با is و
156
00:04:51,919 –> 00:04:52,800
false است،
157
00:04:52,800 –> 00:04:55,199
بنابراین مقدمه ما در مورد
158
00:04:55,199 –> 00:04:56,639
برنامه نویسی شی گرا در
159
00:04:56,639 –> 00:04:58,080
ادامه است، من می خواهم در مورد کار
160
00:04:58,080 –> 00:05:01,280
با این اشیاء صحبت کنم به طوری که در فایل 09
161
00:05:01,280 –> 00:05:02,720
وجود دارد، بنابراین اگر می خواهید آن را در
162
00:05:02,720 –> 00:05:03,680
github دریافت کنید.
163
00:05:03,680 –> 00:05:05,919
اولین
164
00:05:05,919 –> 00:05:07,44