در این مطلب، ویدئو برنامه نویسی شبکه پایتون 13 – نمایش همه اتصالات فعلی (برنامه نویسی سوکت) با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:09:08
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:02,220
خوب بچه ها خوش آمدید در
2
00:00:02,220 –> 00:00:04,470
ویدیوی قبلی ما اولین
3
00:00:04,470 –> 00:00:06,870
پوسته تعاملی سفارشی خود را ساختیم بنابراین این
4
00:00:06,870 –> 00:00:08,849
عملکرد لاک پشت شروع را ایجاد کردیم و اساساً
5
00:00:08,849 –> 00:00:10,860
چارچوبی را ایجاد کردیم که می توانیم
6
00:00:10,860 –> 00:00:13,349
لیست ها را تایپ کنیم و همه کلاینت هایی
7
00:00:13,349 –> 00:00:15,330
که با یک فایل PI نقطه سرور متصل هستند
8
00:00:15,330 –> 00:00:17,190
نمایش داده می شوند. ما در
9
00:00:17,190 –> 00:00:19,590
واقع همه این توابع را ایجاد نکردهایم،
10
00:00:19,590 –> 00:00:22,170
فقط آنها را در مکانهای مناسب فراخوانی کردهایم، بنابراین
11
00:00:22,170 –> 00:00:23,910
در این ویدیو ما در واقع
12
00:00:23,910 –> 00:00:25,650
میخواهیم این تابع لیست اتصالات را ایجاد کنیم
13
00:00:25,650 –> 00:00:27,599
اولین کاری که میخواهیم انجام دهیم این است که
14
00:00:27,599 –> 00:00:29,429
در واقع یک نظر بنویسیم که
15
00:00:29,429 –> 00:00:31,260
به شما بگوید. ما این قطعه کد قرار است
16
00:00:31,260 –> 00:00:33,120
چه کاری انجام دهد و در داخل آن من فقط می
17
00:00:33,120 –> 00:00:35,910
خواهم بنویسم نمایش تمام
18
00:00:35,910 –> 00:00:42,629
اتصالات فعال فعلی با کلاینت، بنابراین
19
00:00:42,629 –> 00:00:44,280
بیایید یک تابع ایجاد کنیم و ما می
20
00:00:44,280 –> 00:00:45,809
خواهیم نام این تابع را مشخصاً
21
00:00:45,809 –> 00:00:47,670
اتصالات را لیست کنیم، بنابراین اجازه دهید فقط آن را کپی کنم و
22
00:00:47,670 –> 00:00:50,280
آن را در اینجا بچسبانید و یک رنگ قرار دهید سپس
23
00:00:50,280 –> 00:00:52,379
در داخل این تابع اولین کاری که
24
00:00:52,379 –> 00:00:54,230
میخواهیم انجام دهیم این است که یک متغیر ایجاد
25
00:00:54,230 –> 00:00:57,030
کنیم و آن را نتیجه بنامیم و من
26
00:00:57,030 –> 00:00:59,520
به آن مقدار o میدهم. یک رشته خالی اکنون
27
00:00:59,520 –> 00:01:01,289
تمام این خروجی را که در
28
00:01:01,289 –> 00:01:03,329
اینجا مشاهده می کنید، به عنوان مثال ابتدا این
29
00:01:03,329 –> 00:01:05,309
ID را انتخاب کنید سپس دوست a و تمام این
30
00:01:05,309 –> 00:01:07,290
خروجی در واقع در
31
00:01:07,290 –> 00:01:10,020
این متغیر نتایج ذخیره می شود و بعد از اینکه
32
00:01:10,020 –> 00:01:11,760
همه این خروجی ها را در نتایج ذخیره می کنیم.
33
00:01:11,760 –> 00:01:14,220
اکنون که متغیر نتایج را ایجاد کردهایم، فقط میخواهیم آن را چاپ
34
00:01:14,220 –> 00:01:16,200
35
00:01:16,200 –> 00:01:17,520
کنیم. کار بعدی که میخواهیم انجام دهیم این است که
36
00:01:17,520 –> 00:01:19,680
در واقع تمام اتصالاتی را
37
00:01:19,680 –> 00:01:21,840
که در لیست همه اتصالات ما ذخیره شده است بررسی کنیم
38
00:01:21,840 –> 00:01:24,600
و آنها را یکی یکی مرور کنیم و
39
00:01:24,600 –> 00:01:26,909
بررسی کنیم که آیا اتصال وجود دارد یا خیر. فعال است
40
00:01:26,909 –> 00:01:29,610
یا نه اگر اتصال فعال نیست،
41
00:01:29,610 –> 00:01:31,200
ما آنها را
42
00:01:31,200 –> 00:01:33,540
از لیست همه اتصالات خود حذف می کنیم، اما اگر
43
00:01:33,540 –> 00:01:35,759
اتصال فعال است،
44
00:01:35,759 –> 00:01:38,520
آنها را به این قدرت نتایج اضافه می کنیم و
45
00:01:38,520 –> 00:01:40,680
آنها را روی یک سرور چاپ می کنیم.
46
00:01:40,680 –> 00:01:42,600
فقط یک حلقه for ایجاد می کنیم و
47
00:01:42,600 –> 00:01:44,070
همه
48
00:01:44,070 –> 00:01:45,899
اتصالات را در لیست همه اتصالات
49
00:01:45,899 –> 00:01:48,990
حلقه می کنیم و قبل از رفتن به داخل حلقه for
50
00:01:48,990 –> 00:01:50,810
اجازه دهید در واقع یک متغیر به نام
51
00:01:50,810 –> 00:01:53,790
Select ID ایجاد کنیم و ما g مقدار آن
52
00:01:53,790 –> 00:01:56,640
0 باشد، پس این متغیر Select ID
53
00:01:56,640 –> 00:01:58,619
چیست و ما با آن چه کار می کنیم، بنابراین اگر
54
00:01:58,619 –> 00:02:00,689
55
00:02:00,689 –> 00:02:02,100
به یاد داشته باشید که در ویدیوی قبلی
56
00:02:02,100 –> 00:02:04,469
در مورد اینکه چگونه هر مشتری یک شناسه انتخابی دریافت می کند، اگر کمی به بالا اسکرول کنیم،
57
00:02:04,469 –> 00:02:07,049
صحبت کردیم. وقتی باید یک
58
00:02:07,049 –> 00:02:08,848
کلاینت خاص را به جای نوشتن
59
00:02:08,848 –> 00:02:11,250
دوست a انتخاب کنیم، فقط می توانیم انتخاب
60
00:02:11,250 –> 00:02:13,170
1 یا انتخاب 2 را بنویسیم و می
61
00:02:13,170 –> 00:02:15,390
توانیم به آن کلاینت متصل شویم در واقع
62
00:02:15,390 –> 00:02:20,010
به من اجازه می دهیم این را به 0 1 و 2 تغییر دهم زیرا
63
00:02:20,010 –> 00:02:22,050
هر زبان برنامه نویسی و حتی
64
00:02:22,050 –> 00:02:25,319
پایتون لیست است. از 0 شروع می شود و نه از 1 بنابراین
65
00:02:25,319 –> 00:02:26,670
ما می خواهیم از آن به نفع خود استفاده کنیم
66
00:02:26,670 –> 00:02:27,360
67
00:02:27,360 –> 00:02:30,330
و در واقع به جای شناسه Select
68
00:02:30,330 –> 00:02:32,220
می توانیم از چیزی استفاده کنیم که به نام enumerate شناخته می شود،
69
00:02:32,220 –> 00:02:35,370
این یک پایتون میانی می آید، اما
70
00:02:35,370 –> 00:02:36,870
من فقط آن را در اینجا برای شما توضیح می دهم.
71
00:02:36,870 –> 00:02:39,420
به جای اینکه
72
00:02:39,420 –> 00:02:41,760
هر بار که این برای حلقهها اجرا میشود، این شناسه انتخابی را افزایش
73
00:02:41,760 –> 00:02:44,069
دهیم، بنابراین کاری که ما معمولا
74
00:02:44,069 –> 00:02:45,390
انجام میدهیم این است که فقط میخواهیم
75
00:02:45,390 –> 00:02:47,130
شناسه Select را بنویسیم و سپس میتوانیم
76
00:02:47,130 –> 00:02:49,590
چیزی شبیه + برابر با 1 بنویسیم و هر
77
00:02:49,590 –> 00:02:52,319
بار که این حلقه for اجرا میشود، شناسه Select
78
00:02:52,319 –> 00:02:55,319
است. رفتن فقط 1 را افزایش دهیم، اما
79
00:02:55,319 –> 00:02:57,600
به جای آن کاری که میتوانیم انجام دهیم این است که فقط
80
00:02:57,600 –> 00:03:00,299
از یک تابع شمارشگر استفاده کنیم، بنابراین میتوانیم
81
00:03:00,299 –> 00:03:02,340
فقط رطوبت را در اینجا بنویسیم و
82
00:03:02,340 –> 00:03:04,140
این همه اتصالات را در داخل این
83
00:03:04,140 –> 00:03:06,630
تابع شمارش قرار دهیم و سپس میتوانیم
84
00:03:06,630 –> 00:03:09,480
فقط یک کاما در اینجا قرار دهیم و این
85
00:03:09,480 –> 00:03:12,120
کار به این صورت انجام می شود که هر بار که حلقه for ما
86
00:03:12,120 –> 00:03:14,910
تکرار می شود، یعنی از
87
00:03:14,910 –> 00:03:17,069
لیست تمام اتصالات عبور می کند
88
00:03:17,069 –> 00:03:20,040
، مقدار Phi را افزایش می دهد و وقتی از enumerate استفاده می کنیم
89
00:03:20,040 –> 00:03:21,750
، مقدار I به
90
00:03:21,750 –> 00:03:24,750
طور خودکار 0 است، بنابراین می توانیم
91
00:03:24,750 –> 00:03:27,720
شناسه انتخابی را از آن حذف کنیم. در اینجا و در داخل این
92
00:03:27,720 –> 00:03:29,489
حلقه for میخواهیم بنویسیم که سعی کنید
93
00:03:29,489 –> 00:03:32,130
و کد قبول را بنویسیم چرا سعی میکنیم
94
00:03:32,130 –> 00:03:34,019
این کد امتحان و قبول را بنویسیم این به این
95
00:03:34,019 –> 00:03:36,120
دلیل است که میخواهیم ببینیم آیا
96
00:03:36,120 –> 00:03:38,940
اتصال ما هنوز فعال است یا نه،
97
00:03:38,940 –> 00:03:41,010
مثلاً بگوییم شما دوست a در
98
00:03:41,010 –> 00:03:43,350
ابتدا به سرور شما متصل بود اما
99
00:03:43,350 –> 00:03:45,570
اکنون این رایانه را خاموش کرده است، بنابراین
100
00:03:45,570 –> 00:03:47,760
اتصال او در حال حاضر فعال نیست
101
00:03:47,760 –> 00:03:49,709
و آن کلاینت در واقع در
102
00:03:49,709 –> 00:03:52,530
حال حاضر به سرور ما متصل نیست، بنابراین
103
00:03:52,530 –> 00:03:54,180
ما فقط یک ساختگی ارسال می کنیم.
104
00:03:54,180 –> 00:03:56,280
درخواست اتصال به کامپیوتر او و
105
00:03:56,280 –> 00:03:58,290
بررسی کنید که آیا آن اتصال فعال است
106
00:03:58,290 –> 00:04:00,750
یا نه، ما فقط قرار است Co n را بنویسیم
107
00:04:00,750 –> 00:04:04,980
که یک اتصال نقطه ارسال است و در داخل
108
00:04:04,980 –> 00:04:07,200
آن فقط قرار است STR dot
109
00:04:07,200 –> 00:04:09,299
n کد بنویسیم که قرار است نوعی ارسال
110
00:04:09,299 –> 00:04:11,880
کنیم. از بایت ها به کامپیوتر
111
00:04:11,880 –> 00:04:14,970
او می فرستیم و ما فقط یک رشته خالی برای او می فرستیم و
112
00:04:14,970 –> 00:04:17,310
بعد از اینکه او را در رشته خالی می فرستیم،
113
00:04:17,310 –> 00:04:19,200
چیزی را برمی گردانیم تا بتوانیم
114
00:04:19,200 –> 00:04:22,140
فقط بنویسیم Co و n نقطه دریافت این
115
00:04:22,140 –> 00:04:23,640
باید بررسی شود که چه چیزی دریافت کرده ایم و
116
00:04:23,640 –> 00:04:26,260
داخل آن این ما نوعی تکهها را دریافت میکنیم که
117
00:04:26,260 –> 00:04:28,420
روی صفر
118
00:04:28,420 –> 00:04:30,400
چهار و هشت صفر مینویسند و این عدد
119
00:04:30,400 –> 00:04:32,620
بسیار زیاد است، زیرا ما واقعاً نمیدانیم
120
00:04:32,620 –> 00:04:34,300
چه مقدار داده میخواهیم به دست آوریم،
121
00:04:34,300 –> 00:04:36,760
یعنی جایی که اندازه ساقه بایت
122
00:04:36,760 –> 00:04:39,550
بسیار زیبا است. اگر
123
00:04:39