در این مطلب، ویدئو مقدمه پایتون: متغیرهای کلاس در مقابل متغیرهای نمونه با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:06:01
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,160 –> 00:00:02,080
سلام، در این ویدیو
2
00:00:02,080 –> 00:00:03,600
میخواهم بین دو نوع
3
00:00:03,600 –> 00:00:05,440
متغیری که میتوانند در کلاسها وجود داشته باشند، تفاوت قائل
4
00:00:05,440 –> 00:00:08,400
5
00:00:08,400 –> 00:00:10,240
6
00:00:10,240 –> 00:00:10,559
7
00:00:10,559 –> 00:00:12,559
8
00:00:12,559 –> 00:00:13,759
9
00:00:13,759 –> 00:00:15,679
شوم. از
10
00:00:15,679 –> 00:00:16,960
کلاس point، متغیرهای نمونه
11
00:00:16,960 –> 00:00:17,520
12
00:00:17,520 –> 00:00:19,359
x و y را خواهد داشت، اگرچه هر نقطه می تواند
13
00:00:19,359 –> 00:00:21,840
مقادیر متفاوتی برای آن متغیرها داشته باشد،
14
00:00:21,840 –> 00:00:23,119
من می خواهم تعریف کلاس برای نقطه را تصور کنید
15
00:00:23,119 –> 00:00:24,880
، این چیزی است
16
00:00:24,880 –> 00:00:27,119
که
17
00:00:27,119 –> 00:00:28,960
هر زمان که یک شی نقطه ای ایجاد می شود، همه اشیاء نقطه از آن می آیند.
18
00:00:28,960 –> 00:00:30,640
به آن متغیرهای x و y می دهد که
19
00:00:30,640 –> 00:00:31,920
20
00:00:31,920 –> 00:00:34,160
هر شی نقطه ای x خود را می گیرد و
21
00:00:34,160 –> 00:00:36,000
y متغیرهای x و y به
22
00:00:36,000 –> 00:00:37,280
خود کلاس نقطه تعلق ندارند،
23
00:00:37,280 –> 00:00:38,879
بلکه به هر نمونه ای تعلق دارند
24
00:00:38,879 –> 00:00:40,399
25
00:00:40,399 –> 00:00:42,320
که به کدی که دو
26
00:00:42,320 –> 00:00:44,160
نمونه داریم باز می گردد. متغیرها حالا بیایید یک متغیر کلاس اضافه
27
00:00:44,160 –> 00:00:45,360
کنیم
28
00:00:45,360 –> 00:00:46,960
در اینجا به نظر می رسد این یک
29
00:00:46,960 –> 00:00:48,399
متغیر است که به هیچ
30
00:00:48,399 –> 00:00:49,600
شیء خاصی
31
00:00:49,600 –> 00:00:51,280
تعلق ندارد بلکه به کل کلاس تعلق دارد.
32
00:00:51,280 –> 00:00:54,160
ما میتوانیم از آن به این شکل استفاده
33
00:00:54,160 –> 00:00:56,559
کنیم، ما به آن به عنوان نقطهای اشاره میکنیم که تعداد
34
00:00:56,559 –> 00:00:57,680
35
00:00:57,680 –> 00:00:59,520
36
00:00:59,520 –> 00:01:01,280
37
00:01:01,280 –> 00:01:02,000
38
00:01:02,000 –> 00:01:03,680
نقاط ساخته شده است.
39
00:01:03,680 –> 00:01:05,280
40
00:01:05,280 –> 00:01:06,560
41
00:01:06,560 –> 00:01:08,479
زمانی که متد init فراخوانی می شود
42
00:01:08,479 –> 00:01:10,400
یا هر بار که یک شی نقطه ایجاد می کنیم،
43
00:01:10,400 –> 00:01:12,880
این متغیر با یک
44
00:01:12,880 –> 00:01:14,799
نت سریع روی عملگر مثبت برابر می
45
00:01:14,799 –> 00:01:16,479
شود، اساساً مقدار
46
00:01:16,479 –> 00:01:17,840
سمت راست را به چیزی در سمت چپ اضافه می کند،
47
00:01:17,840 –> 00:01:19,840
این مانند گفتن نقطه نقطه است. تعداد
48
00:01:19,840 –> 00:01:21,280
نقاط ساخته
49
00:01:21,280 –> 00:01:24,320
50
00:01:24,320 –> 00:01:26,320
51
00:01:26,320 –> 00:01:28,320
52
00:01:28,320 –> 00:01:29,840
53
00:01:29,840 –> 00:01:31,040
54
00:01:31,040 –> 00:01:33,040
55
00:01:33,040 –> 00:01:34,799
شده برابر است.
56
00:01:34,799 –> 00:01:36,000
کلاس نقطه به عنوان یک کل
57
00:01:36,000 –> 00:01:37,759
و شما می توانید با گفتن نقطه
58
00:01:37,759 –> 00:01:39,680
نقطه تعداد نقاط ساخته شده
59
00:01:39,680 –> 00:01:41,680
به آن دسترسی پیدا کنید، اما همچنین می توانید از طریق یک نمونه به آن دسترسی داشته باشید
60
00:01:41,680 –> 00:01:43,520
تا بفهمید
61
00:01:43,520 –> 00:01:45,119
اینجا چه خبر است.
62
00:01:45,119 –> 00:01:46,560
63
00:01:46,560 –> 00:01:48,159
کلاس نقطه به این شکل به نظر می رسد
64
00:01:48,159 –> 00:01:50,000
65
00:01:50,000 –> 00:01:52,000
وقتی یک شی نقطه ای می سازیم تعداد نقاط
66
00:01:52,000 –> 00:01:53,280
ساخته شده با 1 بالا می رود یک
67
00:01:53,280 –> 00:01:55,200
متغیر در
68
00:01:55,200 –> 00:01:56,960
69
00:01:56,960 –> 00:01:58,880
70
00:01:58,880 –> 00:02:01,040
آن وجود دارد.
71
00:02:01,040 –> 00:02:02,960
وقتی نقطه نقطه را پرینت میکنیم،
72
00:02:02,960 –> 00:02:04,799
به متغیرهای numpointهای
73
00:02:04,799 –> 00:02:07,439
ساخته شده در کلاس
74
00:02:07,439 –> 00:02:09,679
نقطه دسترسی پیدا میکند، وقتی که p2 را چاپ میکنیم، نقطههای num را در اینجا چاپ میکنیم
75
00:02:09,679 –> 00:02:11,038
، کاری که پایتون انجام میدهد،
76
00:02:11,038 –> 00:02:13,599
ابتدا داخل p2 برای
77
00:02:13,599 –> 00:02:16,000
متغیری به نام num points ساخته شده است،
78
00:02:16,000 –> 00:02:17,680
اگر چیزی پیدا نکرد. سپس
79
00:02:17,680 –> 00:02:19,280
در تعریف کلاس به دنبال
80
00:02:19,280 –> 00:02:20,959
متغیری به نام num points میگردد که
81
00:02:20,959 –> 00:02:22,640
در این مورد ساخته شده است، جایی که پایتون
82
00:02:22,640 –> 00:02:24,160
آنچه را که به دنبالش است پیدا میکند
83
00:02:24,160 –> 00:02:26,000
در حالی که شما میتوانید از طریق نمونهها به متغیرهای کلاس دسترسی پیدا کنید
84
00:02:26,000 –> 00:02:27,840
، برعکس این
85
00:02:27,840 –> 00:02:28,239
درست نیست،
86
00:02:28,239 –> 00:02:30,000
شما نمیتوانید از طریق کلاس به یک متغیر نمونه دسترسی پیدا کنید
87
00:02:30,000 –> 00:02:32,000
، این منطقی است. این
88
00:02:32,000 –> 00:02:33,680
امر مبهم خواهد بود که شما متغیرها را از کدام نمونه می خواهید
89
00:02:33,680 –> 00:02:36,319
،
90
00:02:36,319 –> 00:02:37,680
در اینجا پیاده سازی دیگری از
91
00:02:37,680 –> 00:02:39,920
کلاس point در این نسخه
92
00:02:39,920 –> 00:02:41,519
وجود دارد که در حال حاضر هیچ نمونه v وجود ندارد. ariables
93
00:02:41,519 –> 00:02:43,200
x و y هر دو به عنوان متغیرهای کلاس ذخیره می شوند،
94
00:02:43,200 –> 00:02:44,959
این احتمالاً
95
00:02:44,959 –> 00:02:46,319
در حال حاضر معنی ندارد، بنابراین فقط به من اعتماد
96
00:02:46,319 –> 00:02:47,760
کنید تا در یک ثانیه متوجه شوید که چرا این نسخه از
97
00:02:47,760 –> 00:02:50,640
کلاس نقطه مهم است برای درک
98
00:02:50,640 –> 00:02:52,000
اینکه می توانید مقدار متغیر کلاس را
99
00:02:52,000 –> 00:02:54,000
بعد از آن تغییر دهید. کلاس تعریف شده است
100
00:02:54,000 –> 00:02:55,519
در این مورد،
101
00:02:55,519 –> 00:02:57,040
متغیر کلاس x را به 10 تغییر می دهیم، به
102
00:02:57,040 –> 00:02:59,280
این معنی که چاپ p1.x
103
00:02:59,280 –> 00:03:00,080
مقدار 10 را
104
00:03:00,080 –> 00:03:03,120
در کلاس نقطه پیدا می کند، اما اگر
105
00:03:03,120 –> 00:03:07,599
به جای تنظیم point.x، p1.x را به
1