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