در این مطلب، ویدئو دوره کامل برنامه نویسی پایتون پیشرفته | دوره کامل پایتون | یادگیری پایتون در یک ویدیو |Simplelearn با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 2:27:00
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:12,160 –> 00:00:13,840
سلام به همه و به این خوش آمدید
2
00:00:13,840 –> 00:00:15,920
دوره پیشرفته پر کردن پایتون به سادگی
3
00:00:15,920 –> 00:00:16,400
فرا گرفتن
4
00:00:16,400 –> 00:00:18,480
در این دوره آموزشی را پوشش خواهیم داد
5
00:00:18,480 –> 00:00:20,560
برخی از مفاهیم پیشرفته پایتون که هستند
6
00:00:20,560 –> 00:00:22,160
برای توسعه دهندگان مهم است
7
00:00:22,160 –> 00:00:24,080
در این ویدیو به بحث خواهیم پرداخت
8
00:00:24,080 –> 00:00:25,519
در مورد تکرار کننده ها
9
00:00:25,519 –> 00:00:28,840
لیست ژنراتورهای بسته های ماژول
10
00:00:28,840 –> 00:00:30,880
درک به دنبال آن
11
00:00:30,880 –> 00:00:33,120
ما روی عبارات منظم کار خواهیم کرد
12
00:00:33,120 –> 00:00:34,320
سریال سازی ها
13
00:00:34,320 –> 00:00:37,520
عملکرد جزئی بسته های تزئینی
14
00:00:37,520 –> 00:00:40,480
نقشه فیلتر و کاهش توابع و
15
00:00:40,480 –> 00:00:41,520
به سمت پایان
16
00:00:41,520 –> 00:00:43,520
ما روی یک پروژه کوچک کار خواهیم کرد
17
00:00:43,520 –> 00:00:45,280
بر اساس آموخته های ما
18
00:00:45,280 –> 00:00:47,200
ما با خودمان که کار می کنیم، آنیش داریم
19
00:00:47,200 –> 00:00:49,680
با صنعت برای مدت بسیار طولانی
20
00:00:49,680 –> 00:00:51,360
او به ما کمک خواهد کرد تا یاد بگیریم
21
00:00:51,360 –> 00:00:52,800
مفاهیم عمیق در
22
00:00:52,800 –> 00:00:55,520
python و او همچنین به ما توضیح خواهد داد که چگونه
23
00:00:55,520 –> 00:00:57,039
برای کدنویسی موثر
24
00:00:57,039 –> 00:00:58,800
به تو anish سلام به همه و
25
00:00:58,800 –> 00:01:00,640
به ویدیوی دیگری در مورد پایتون خوش آمدید
26
00:01:00,640 –> 00:01:01,440
برنامه نويسي
27
00:01:01,440 –> 00:01:03,120
در این ویدیو به این موضوع خواهیم پرداخت
28
00:01:03,120 –> 00:01:04,640
موضوع تکرار کننده ها
29
00:01:04,640 –> 00:01:06,720
اکنون یک تکرار کننده در پایتون یک شی است
30
00:01:06,720 –> 00:01:08,240
که شامل تعداد قابل شمارش است
31
00:01:08,240 –> 00:01:08,799
ارزش های
32
00:01:08,799 –> 00:01:10,960
یا یک شی بزرگتر است که حاوی الف است
33
00:01:10,960 –> 00:01:12,960
تعداد قابل شمارش اشیاء فرعی
34
00:01:12,960 –> 00:01:14,960
تکرار کننده یک شی است که می تواند باشد
35
00:01:14,960 –> 00:01:16,000
تکرار شده بر
36
00:01:16,000 –> 00:01:17,840
و معنی آن این است که ما می توانیم عبور کنیم
37
00:01:17,840 –> 00:01:19,520
از هر مقدار و ما می توانیم
38
00:01:19,520 –> 00:01:21,680
دستکاری یا انجام عملکردهای خاص
39
00:01:21,680 –> 00:01:23,119
یا عملیات و وظایف
40
00:01:23,119 –> 00:01:25,759
با استفاده از هر یک از اشیاء یا مقادیر فرعی
41
00:01:25,759 –> 00:01:26,240
در داخل
42
00:01:26,240 –> 00:01:28,960
این مجموعه بزرگتر به نام iterator
43
00:01:28,960 –> 00:01:29,600
اکنون
44
00:01:29,600 –> 00:01:32,240
وقتی از نظر فنی به آن نگاه می کنیم
45
00:01:32,240 –> 00:01:34,159
تکرار کننده یک شی است که
46
00:01:34,159 –> 00:01:36,159
پروتکل iterator را در آن پیاده سازی می کند
47
00:01:36,159 –> 00:01:38,240
پایتون که از متدها تشکیل شده است
48
00:01:38,240 –> 00:01:40,960
eter و روش بعدی برای شروع
49
00:01:40,960 –> 00:01:42,640
اجازه دهید به یک تکرار کننده ساده نگاه کنیم
50
00:01:42,640 –> 00:01:44,720
نمونه ای از یک لیست را می بینیم
51
00:01:44,720 –> 00:01:46,720
جایی که قرار است از آن عبور کنیم
52
00:01:46,720 –> 00:01:47,920
اشیاء یک لیست
53
00:01:47,920 –> 00:01:49,759
از حلقه for استفاده می کنیم تا آبجکت داشته باشیم
54
00:01:49,759 –> 00:01:51,119
یک دو سه چهار و من می روم
55
00:01:51,119 –> 00:01:52,880
هر یک از این مقادیر را یکی یکی چاپ کنید
56
00:01:52,880 –> 00:01:55,439
همانطور که در اینجا می بینید به طور مشابه ما می توانیم
57
00:01:55,439 –> 00:01:56,960
همچنین همین کار را برای دیگری انجام دهید
58
00:01:56,960 –> 00:01:57,680
قابل تکرار
59
00:01:57,680 –> 00:01:59,439
به عنوان رشته ای که می توانیم به آنجا برویم شناخته می شود
60
00:01:59,439 –> 00:02:01,360
کاراکتر به کاراکتر دوباره با استفاده از
61
00:02:01,360 –> 00:02:02,000
برای حلقه
62
00:02:02,000 –> 00:02:05,600
همانطور که در اینجا می توانید نمونه دیگری از آن را ببینید
63
00:02:05,600 –> 00:02:09,280
یک قابل تکرار در پایتون دیکشنری است
64
00:02:09,280 –> 00:02:11,038
بنابراین بیایید بگوییم من یک فرهنگ لغت دارم که در آن من
65
00:02:11,038 –> 00:02:13,520
دارای دو مقدار دو جفت ارزش کلیدی
66
00:02:13,520 –> 00:02:15,760
کلید uh x که حاوی مقدار یک است
67
00:02:15,760 –> 00:02:16,959
و کلید y که
68
00:02:16,959 –> 00:02:18,800
مربوط به مقدار دو now when
69
00:02:18,800 –> 00:02:20,879
من قصد دارم از طریق این یک حلقه for انجام دهم
70
00:02:20,879 –> 00:02:21,680
به صورت پیش فرض
71
00:02:21,680 –> 00:02:24,000
من از میان کلیدهای x عبور خواهم کرد
72
00:02:24,000 –> 00:02:25,920
و y همانطور که در اینجا می بینید
73
00:02:25,920 –> 00:02:28,080
و البته انواع دیگر وزن
74
00:02:28,080 –> 00:02:29,520
مشکلات در پایتون مانند
75
00:02:29,520 –> 00:02:32,560
ست ها و تاپل ها نیز در حال حاضر
76
00:02:32,560 –> 00:02:34,000
بیایید نگاهی بیندازیم به
77
00:02:34,000 –> 00:02:36,640
این پروتکل تکرار در چه چیزی است
78
00:02:36,640 –> 00:02:37,280
پایتون
79
00:02:37,280 –> 00:02:39,360
بنابراین اول از همه ما یک تکرار آن را می گیریم
80
00:02:39,360 –> 00:02:41,360
یک شی که حاوی یک است
81
00:02:41,360 –> 00:02:43,040
مجموعه ای از اشیاء که حاوی زیر
82
00:02:43,040 –> 00:02:43,599
اشیاء
83
00:02:43,599 –> 00:02:45,920
و زمانی که از تابع eater استفاده می کنیم
84
00:02:45,920 –> 00:02:48,080
یک تکرار کننده از آن ایجاد می کند تا بتوانیم
85
00:02:48,080 –> 00:02:50,959
یکی یکی می توانیم از طریق اوم عبور کنیم
86
00:02:50,959 –> 00:02:52,239
هر یک از اشیاء و ما می توانیم
87
00:02:52,239 –> 00:02:53,840
هر یک از اشیاء را دستکاری کنید
88
00:02:53,840 –> 00:02:56,160
که در این موجود است و در هر زمان
89
00:02:56,160 –> 00:02:57,599
ما می خواهیم که
90
00:02:57,599 –> 00:02:59,440
حرکت به شی بعدی که ما از بعدی استفاده می کنیم
91
00:02:59,440 –> 00:03:01,120
عملکرد و زمان
92
00:03:01,120 –> 00:03:03,920
ما بالاخره تمام یا را تکمیل کردیم
93
00:03:03,920 –> 00:03:04,640
ما داریم
94
00:03:04,640 –> 00:03:06,400
دستکاری یا عبور از هر یک از
95
00:03:06,400 –> 00:03:08,239
زیر اشیاء ما
96
00:03:08,239 –> 00:03:10,400
با استثنای توقف تکرار مواجه شد
97
00:03:10,400 –> 00:03:11,920
که به ما می گوید خوب دیگر وجود ندارد
98
00:03:11,920 –> 00:03:14,800
اشیایی که باید دستکاری شوند یا
99
00:03:14,800 –> 00:03:17,680
بر همین اساس و به عنوان مثال تکرار شد i
100
00:03:17,680 –> 00:03:19,200
یک لیست ایجاد خواهد کرد
101
00:03:19,200 –> 00:03:22,080
جایی که مقادیری را ذخیره خواهم کرد
102
00:03:22,080 –> 00:03:24,319
مقادیر ساده اعداد صحیح یک دو سه
103
00:03:24,319 –> 00:03:26,799
چهار یک سه چهار پنج باشه من هستم
104
00:03:26,799 –> 00:03:28,480
از این یک تکرار کننده ایجاد می شود
105
00:03:28,480 –> 00:03:29,120
جایی که من استفاده خواهم کرد
106
00:03:29,120 –> 00:03:31,840
عملکرد آن است و من می خواهم بگویم این است
107
00:03:31,840 –> 00:03:33,280
بیایید بگوییم این نامیده می شود
108
00:03:33,280 –> 00:03:36,640
بخاری من خوبه
109
00:03:36,640 –> 00:03:39,280
و من از تابع iter به عنوان i استفاده خواهم کرد
110
00:03:39,280 –> 00:03:40,879
اشاره کرده بود و من می روم
111
00:03:40,879 –> 00:03:42,560
لیست در این
112
00:03:42,560 –> 00:03:45,200
حالا اگر ببینی اتر من چیست باید
113
00:03:45,200 –> 00:03:46,560
بگویید باید یک باشد
114
00:03:46,560 –> 00:03:48,319
لیست تکرار کننده در یک حافظه خاص
115
00:03:48,319 –> 00:03:50,959
مکان اکنون بیایید از تابع بعدی استفاده کنیم
116
00:03:50,959 –> 00:03:52,959
برای ادامه دادن از طریق هر آنچه وجود دارد
117
00:03:52,959 –> 00:03:54,080
در این
118
00:03:54,080 –> 00:03:56,239
بنابراین البته اولین شی باید باشد
119
00:03:56,239 –> 00:03:58,159
یکی همانطور که می بینید
120
00:03:58,159 –> 00:04:00,400
حالا وقتی به بعدی نگاه می کنم باید باشد
121
00:04:00,400 –> 00:04:02,159
3 بعد باید 4 بگیرم
122
00:04:02,159 –> 00:04:04,959
و حالا باید 5 بگیرم همانطور که از بعدی استفاده می کنم
123
00:04:04,959 –> 00:04:05,920
به طور متوالی
124
00:04:05,920 –> 00:04:08,000
اکنون از زمانی که به آخرین بار رسیده ام
125
00:04:08,000 –> 00:04:09,439
اشیاء موجود در این مجموعه
126
00:04:09,439 –> 00:04:10,959
حالا دفعه بعد که از این بعدی استفاده کنم
127
00:04:10,959 –> 00:04:12,799
تابع من باید یک توقف دریافت کنم
128
00:04:12,799 –> 00:04:15,360
توقف تکرار استثنا که مطرح شده است
129
00:04:15,360 –> 00:04:16,320
همانطور که می توانید در اینجا ببینید
130
00:04:16,320 –> 00:04:19,440
بنابراین این تکرار um پایه است
131
00:04:19,440 –> 00:04:23,040
اکنون ممکن است پروتکل در پایتون داشته باشید
132
00:04:23,040 –> 00:04:25,120
قبلاً ویدیوی حلقه for را گذرانده اید
133
00:04:25,120 –> 00:04:26,479
و در آن من صحبت کرده ام
134
00:04:26,479 –> 00:04:28,479
با کمی جزئیات در مورد چگونگی یک for
135
00:04:28,479 –> 00:04:30,400
حلقه این کار را انجام می دهد
136
00:04:30,400 –> 00:04:32,880
این پروتکل تکرار کننده و نحوه آن
137
00:04:32,880 –> 00:04:33,440
ایجاد می کند
138
00:04:33,440 –> 00:04:35,520
مفعول تکرار شونده خارج از حد الف
139
00:04:35,520 –> 00:04:36,800
لیست یا الف
140
00:04:36,800 –> 00:04:39,040
تاپل و چگونه ما چگونه آن را در داخل
141
00:04:39,040 –> 00:04:40,479
عملکرد بعدی را انجام می دهد
142
00:04:40,479 –> 00:04:43,199
و یک بار از حلقه for خارج می شود
143
00:04:43,199 –> 00:04:44,800
با تکرار توقف مواجه می شود
144
00:04:44,800 –> 00:04:45,600
استثنا
145
00:04:45,600 –> 00:04:48,479
بنابراین حلقه ها مانند آنها بسیار هستند
146
00:04:48,479 –> 00:04:49,919
خیلی شبیه به
147
00:04:49,919 –> 00:04:51,680
تکرار کننده استاندارد شما و آنها استفاده می کنند
148
00:04:51,680 –> 00:04:52,960
تقریبا همینطور
149
00:04:52,960 –> 00:04:56,080
پروتکل برای عملکرد آن در حال حاضر اجازه دهید
150
00:04:56,080 –> 00:04:58,639
یک مقایسه اساسی از آنچه a است انجام دهید
151
00:04:58,639 –> 00:05:01,199
یک مقایسه اساسی بین یک ژنراتور
152
00:05:01,199 –> 00:05:03,039
و یک تکرار کننده در پایتون
153
00:05:03,039 –> 00:05:06,240
بنابراین در ژنراتور از تابعی که استفاده می کنیم استفاده می کنیم
154
00:05:06,240 –> 00:05:07,360
همانطور که ما آن را تعریف می کنیم
155
00:05:07,360 –> 00:05:09,440
با استفاده از کلمه کلیدی def و آن را تعریف می کنیم
156
00:05:09,440 –> 00:05:11,600
تحت یک تابع برای ایجاد یک ژنراتور
157
00:05:11,600 –> 00:05:14,160
در حالی که در مورد تکرار کننده ها استفاده می کنیم
158
00:05:14,160 –> 00:05:15,759
دو تابع مجزا تابع iter
159
00:05:15,759 –> 00:05:17,280
و تابع بعدی
160
00:05:17,280 –> 00:05:18,880
ژنراتور از بازده استفاده می کند
161
00:05:18,880 –> 00:05:20,320
کلمه کلیدی در حالی که
162
00:05:20,320 –> 00:05:23,120
تکرار کننده پایتون در ژنراتورها وجود ندارد
163
00:05:23,120 –> 00:05:24,560
ما ایالت های محلی را نجات می دهیم
164
00:05:24,560 –> 00:05:25,360
متغیرها
165
00:05:25,360 –> 00:05:27,440
هر بار که از کلمه کلیدی yield و استفاده می کنیم
166
00:05:27,440 –> 00:05:28,800
حلقه را مکث می کنیم
167
00:05:28,800 –> 00:05:31,120
به طور موقت در حالی که در تکرار کننده ها انجام می دهیم
168
00:05:31,120 –> 00:05:33,039
از هیچ متغیر محلی استفاده نکنید
169
00:05:33,039 –> 00:05:35,680
تنها چیزی که نیاز داریم هر مشکلی مانند یک لیست است
170
00:05:35,680 –> 00:05:37,759
برای تکرار
171
00:05:37,759 –> 00:05:39,199
ما ممکن است از هر تعداد بازده استفاده کنیم
172
00:05:39,199 –> 00:05:40,960
اظهارات در ژنراتورها و ما انجام نمی دهیم
173
00:05:40,960 –> 00:05:41,440
استفاده کنید
174
00:05:41,440 –> 00:05:44,000
مولدهای آغازگر بیانیه های بازده
175
00:05:44,000 –> 00:05:46,160
در حالی که حافظه کارآمد نیستند
176
00:05:46,160 –> 00:05:48,320
تکرار کننده ها بسیار کارآمد حافظه هستند
177
00:05:48,320 –> 00:05:49,680
این مثل ابتدایی است
178
00:05:49,680 –> 00:05:51,199
مقایسه بین ژنراتورها و
179
00:05:51,199 –> 00:05:53,120
تکرار کننده در این ویدیو خواهیم بود
180
00:05:53,120 –> 00:05:55,360
پوشش موضوع ماژول ها در پایتون
181
00:05:55,360 –> 00:05:57,680
اکنون یک ماژول در پایتون به زبان ساده
182
00:05:57,680 –> 00:05:59,680
اساسا یک فایل پایتون است که دارد
183
00:05:59,680 –> 00:06:01,759
توابع و کلاس های نوشته شده در آن
184
00:06:01,759 –> 00:06:04,240
و با پسوند dot py ذخیره می شود
185
00:06:04,240 –> 00:06:06,160
مشخص کنید که واقعاً یک پایتون است
186
00:06:06,160 –> 00:06:08,319
فایل یک برنامه پایتون می تواند از یکی یا استفاده کند
187
00:06:08,319 –> 00:06:09,199
ماژول های بیشتر
188
00:06:09,199 –> 00:06:10,880
و ماژول ها می توانند یک یا چند داشته باشند
189
00:06:10,880 –> 00:06:12,960
توابع آنها اساسا به ما کمک می کنند
190
00:06:12,960 –> 00:06:15,199
کد ما را سازماندهی کنیم و به جای داشتن
191
00:06:15,199 –> 00:06:17,440
یکی مانند یک فایل پایتون طولانی ما می توانیم
192
00:06:17,440 –> 00:06:19,600
چندین فایل یا چندین ماژول داشته باشید
193
00:06:19,600 –> 00:06:20,000
اکنون
194
00:06:20,000 –> 00:06:22,160
برنامه نویسی ماژولار فرآیندی است از
195
00:06:22,160 –> 00:06:23,919
شکستن یک بزرگ
196
00:06:23,919 –> 00:06:26,639
یک رویداد یا کار بزرگ را به کوچکتر و
197
00:06:26,639 –> 00:06:27,680
قابل مدیریت تر
198
00:06:27,680 –> 00:06:30,160
وظایف فرعی و ما به این وظایف فرعی می گوییم
199
00:06:30,160 –> 00:06:32,319
اساسا ماژول در حال حاضر ماژول های فردی
200
00:06:32,319 –> 00:06:33,919
را می توان مانند ساختمان با هم گروه بندی کرد
201
00:06:33,919 –> 00:06:35,520
بلوک برای ایجاد یک بزرگتر
202
00:06:35,520 –> 00:06:37,680
برنامه چندین مزیت دارد
203
00:06:37,680 –> 00:06:39,120
برای تعدیل کد
204
00:06:39,120 –> 00:06:40,880
در یک برنامه بزرگ و ما خواهیم بود
205
00:06:40,880 –> 00:06:42,479
در حال حاضر اول از آنها عبور کنید
206
00:06:42,479 –> 00:06:44,080
همه چیز سادگی است
207
00:06:44,080 –> 00:06:46,880
زیرا به جای تمرکز بر روی یک بزرگ بزرگ
208
00:06:46,880 –> 00:06:48,800
مشکل یک کار بزرگ است که ما می توانیم آن را از بین ببریم
209
00:06:48,800 –> 00:06:49,599
مشکل به
210
00:06:49,599 –> 00:06:51,680
اکنون بخش ها یا ماژول های کوچکتر کوچکتر
211
00:06:51,680 –> 00:06:53,759
قابلیت نگهداری کد بسیار بهتر است
212
00:06:53,759 –> 00:06:55,120
از طریق ماژول ها زیرا آنها هستند
213
00:06:55,120 –> 00:06:57,199
طراحی شده برای ایجاد این نوع
214
00:06:57,199 –> 00:06:57,919
مرزها
215
00:06:57,919 –> 00:07:00,560
یا مرزبندی های روشن بین مختلف
216
00:07:00,560 –> 00:07:01,919
حوزه های مشکل
217
00:07:01,919 –> 00:07:04,319
قابلیت استفاده قابلیت استفاده در وجود دارد
218
00:07:04,319 –> 00:07:06,319
احساس می کنیم وقتی یک ماژول ایجاد می کنیم
219
00:07:06,319 –> 00:07:07,759
می توان از آن در قسمت های مختلف استفاده کرد
220
00:07:07,759 –> 00:07:09,280
کد یا حتی متفاوت متفاوت است
221
00:07:09,280 –> 00:07:10,800
خود برنامه ها
222
00:07:10,800 –> 00:07:12,880
محدوده و این نیز وجود دارد
223
00:07:12,880 –> 00:07:15,199
به طور معمول ماژول است
224
00:07:15,199 –> 00:07:17,759
یک فضای نام جداگانه تعریف کنید و این
225
00:07:17,759 –> 00:07:18,319
به ما کمک می کند
226
00:07:18,319 –> 00:07:20,880
از برخورد بین شناسه ها در
227
00:07:20,880 –> 00:07:22,400
حوزه های مختلف یک برنامه
228
00:07:22,400 –> 00:07:24,160
توابع ماژول ها و بسته ها هستند
229
00:07:24,160 –> 00:07:26,080
اساساً تمام ساختارهای موجود در پایتون که
230
00:07:26,080 –> 00:07:26,560
ترویج
231
00:07:26,560 –> 00:07:29,360
ماژول کد ماژول شما ممکن است
232
00:07:29,360 –> 00:07:31,280
قبلاً برخورد کرده اند
233
00:07:31,280 –> 00:07:33,680
معرفی گوردون به توابع در این
234
00:07:33,680 –> 00:07:34,720
ویدیو ما خواهیم بود
235
00:07:34,720 –> 00:07:36,720
مرور ماژول ها در یک ویدیوی دیگر
236
00:07:36,720 –> 00:07:38,560
ما همچنین به موضوع بسته ها خواهیم پرداخت
237
00:07:38,560 –> 00:07:39,759
برای وارد کردن یک ماژول
238
00:07:39,759 –> 00:07:42,000
ما از کلمه کلیدی import و در این استفاده می کنیم
239
00:07:42,000 –> 00:07:43,599
به عنوان مثال آنچه من قصد دارم به شما نشان دهم
240
00:07:43,599 –> 00:07:45,680
یک تابع ساده یا ساده است
241
00:07:45,680 –> 00:07:48,639
عملیات وارد کردن ماژول سیستم عامل
242
00:07:48,639 –> 00:07:51,280
این کوتاه شده برای سیستم عامل و
243
00:07:51,280 –> 00:07:53,680
همانطور که از نام آن پیداست می توانیم اجرا کنیم
244
00:07:53,680 –> 00:07:55,919
وظایف سیستم از طریق توابع و
245
00:07:55,919 –> 00:07:57,599
روش هایی که بخشی از این هستند
246
00:07:57,599 –> 00:08:00,080
ماژول OS به همین سادگی اجرا می شود
247
00:08:00,080 –> 00:08:02,000
بیانیه این ماژول را وارد می کند
248
00:08:02,000 –> 00:08:04,560
بر روی برنامه ما برای استفاده از آن در حال حاضر اگر ما
249
00:08:04,560 –> 00:08:06,240
می خواستم تمام توابع موجود را ببینم
250
00:08:06,240 –> 00:08:08,319
آنچه را که باید انجام دهیم در یک ماژول ارائه کنیم
251
00:08:08,319 –> 00:08:09,039
استفاده می شود
252
00:08:09,039 –> 00:08:11,919
تابع dir بنابراین اگر dir را چاپ کنیم
253
00:08:11,919 –> 00:08:12,800
عملکرد سیستم عامل
254
00:08:12,800 –> 00:08:14,879
اساساً یک دایرکتوری برای ما چاپ می کند
255
00:08:14,879 –> 00:08:16,879
از تمام توابع موجود در
256
00:08:16,879 –> 00:08:17,599
سیستم عامل
257
00:08:17,599 –> 00:08:20,319
ماژول همانطور که می توانید در اینجا ببینید مانند همه
258
00:08:20,319 –> 00:08:21,840
اینها اساساً هستند
259
00:08:21,840 –> 00:08:23,599
نام توابع مختلف که هستند
260
00:08:23,599 –> 00:08:25,280
بخشی از ماژول OS
261
00:08:25,280 –> 00:08:27,039
در نهایت روی عملکرد دیگری حرکت می کنیم
262
00:08:27,039 –> 00:08:28,479
معمولا با ماژول ها استفاده می شود
263
00:08:28,479 –> 00:08:30,639
تابع get cwd و این است
264
00:08:30,639 –> 00:08:32,479
این جریان را به ما می دهد
265
00:08:32,479 –> 00:08:33,200
کار کردن
266
00:08:33,200 –> 00:08:35,919
دایرکتوری که ما روی آن کار می کنیم
267
00:08:35,919 –> 00:08:36,559
همین الان
268
00:08:36,559 –> 00:08:38,880
بنابراین اگر این را اجرا کنم به من می گوید
269
00:08:38,880 –> 00:08:40,159
دایرکتوری که من هستم چیست
270
00:08:40,159 –> 00:08:41,760
در حال حاضر روی آن کار می شود
271
00:08:41,760 –> 00:08:44,240
همانطور که می بینید dir slash notebook seed
272
00:08:44,240 –> 00:08:46,560
10. اگر می خواستیم همه فایل ها را در آن ببینیم
273
00:08:46,560 –> 00:08:48,560
یک دایرکتوری خاص کاری که ما می توانیم انجام دهیم این است
274
00:08:48,560 –> 00:08:50,240
از تابع list dir استفاده کنید
275
00:08:50,240 –> 00:08:52,320
به دنبال آن یک مسیر به طور پیش فرض اگر
276
00:08:52,320 –> 00:08:53,680
وارد راهی نمی شویم
277
00:08:53,680 –> 00:08:55,519
در داخل پرانتز آن را اساسا
278
00:08:55,519 –> 00:08:57,200
همه فایل های موجود را به ما بدهید
279
00:08:57,200 –> 00:08:58,160
دایرکتوری کار
280
00:08:58,160 –> 00:09:00,160
که در مورد ما دما است بنابراین اگر من بودم
281
00:09:00,160 –> 00:09:02,080
برای اجرای این، اساساً می دهد
282
00:09:02,080 –> 00:09:03,440
من یک لیست از تمام فایل ها
283
00:09:03,440 –> 00:09:06,240
که در حال حاضر در آنجا هستند
284
00:09:06,240 –> 00:09:07,920
دایرکتوری که من در حال حاضر مشغول به کار هستم
285
00:09:07,920 –> 00:09:09,519
در حال حاضر یک گام اساسی
286
00:09:09,519 –> 00:09:11,920
ما یک ماژول پایتون را ایجاد می کنیم
287
00:09:11,920 –> 00:09:13,760
ساده ترین راه برای ایجاد یک ماژول پایتون
288
00:09:13,760 –> 00:09:14,080
است
289
00:09:14,080 –> 00:09:16,240
اساسا ایجاد یک اسکریپت پایتون با
290
00:09:16,240 –> 00:09:18,240
هر کارکرد و وظایفی که ما داریم
291
00:09:18,240 –> 00:09:18,640
خواستن
292
00:09:18,640 –> 00:09:21,120
و روش هایی که ما در داخل هر چیزی می خواهیم
293
00:09:21,120 –> 00:09:21,680
مدول
294
00:09:21,680 –> 00:09:24,800
و آن را با پسوند dot py um ذخیره کنید
295
00:09:24,800 –> 00:09:27,279
بنابراین در مثال من کاری که می خواهم انجام دهم
296
00:09:27,279 –> 00:09:29,360
آیا من قبلا یک اسکریپت ایجاد کرده ام
297
00:09:29,360 –> 00:09:31,680
در دفترچه یادداشت و من آن را با یک نقطه ذخیره کرده ام
298
00:09:31,680 –> 00:09:33,839
پسوند py که شامل این چهار است
299
00:09:33,839 –> 00:09:34,839
توابع اضافه کنید
300
00:09:34,839 –> 00:09:37,920
تفریق حاصل و تقسیم um من
301
00:09:37,920 –> 00:09:40,160
اساساً کپی شده من اساساً از این استفاده می کنم
302
00:09:40,160 –> 00:09:42,160
کد و من آن را در یک نقطه py ذخیره کرده ام
303
00:09:42,160 –> 00:09:44,080
اسکریپت و من قصد دارم از این استفاده کنم
304
00:09:44,080 –> 00:09:47,279
به عنوان یک ماژول تست برای این
305
00:09:47,279 –> 00:09:48,320
مثال خاص
306
00:09:48,320 –> 00:09:50,320
حالا چگونه یک ماژول را یک بار وارد کنیم
307
00:09:50,320 –> 00:09:51,760
که من یک اسکریپت ایجاد کرده ام
308
00:09:51,760 –> 00:09:53,839
اوه در مثال من calc من نامیده می شود
309
00:09:53,839 –> 00:09:54,800
نقطه py
310
00:09:54,800 –> 00:09:56,480
و ما آن را در خود ذخیره کرده ایم
311
00:09:56,480 –> 00:09:58,399
دایرکتوری برای وارد کردن ماژول همه ما
312
00:09:58,399 –> 00:10:00,480
باید از دستور import استفاده کنید
313
00:10:00,480 –> 00:10:02,480
بنابراین اگر من مجبور به وارد کردن کالک من تمام من
314
00:10:02,480 –> 00:10:03,279
باید انجام شود
315
00:10:03,279 –> 00:10:06,480
بگو کالک زیرخط من را وارد کن و
316
00:10:06,480 –> 00:10:09,279
اکنون کالک من وارد شده است، بنابراین ما
317
00:10:09,279 –> 00:10:11,200
می توانیم از عبارت import یا if we استفاده کنیم
318
00:10:11,200 –> 00:10:13,120
می خواهید چیز خاصی را از آن وارد کنید
319
00:10:13,120 –> 00:10:14,480
مایکالک می توانیم انجام دهیم
320
00:10:14,480 –> 00:10:17,839
از واردات کالک من در حال حاضر
321
00:10:17,839 –> 00:10:19,839
به عنوان مثال اگر ما می خواستیم مانند
322
00:10:19,839 –> 00:10:21,200
اضافه کن
323
00:10:21,200 –> 00:10:23,600
تابع افزودن ما اساسا فقط می توانیم
324
00:10:23,600 –> 00:10:24,560
بگو فقط اضافه کن
325
00:10:24,560 –> 00:10:26,560
یا اگر بخواهیم جمع و تفریق کنیم می توانیم
326
00:10:26,560 –> 00:10:28,000
بگو جمع و تفریق
327
00:10:28,000 –> 00:10:30,000
به عنوان مثال بنابراین این اساسا توسط
328
00:10:30,000 –> 00:10:32,000
با استفاده از از می توانیم بگوییم که می خواهیم
329
00:10:32,000 –> 00:10:34,240
چیزی از چیزی اما فقط قطعات
330
00:10:34,240 –> 00:10:36,079
از آن ما همه چیز را نمی خواهیم
331
00:10:36,079 –> 00:10:38,880
ما همچنین می توانیم از واردات mycalc و
332
00:10:38,880 –> 00:10:40,320
می توان گفت آستریکس
333
00:10:40,320 –> 00:10:42,800
اساساً بگویم آه همه چیز را وارد کنید
334
00:10:42,800 –> 00:10:44,640
که در mycalc وجود دارد
335
00:10:44,640 –> 00:10:46,399
در حال حاضر پس این یک راه دیگر است
336
00:10:46,399 –> 00:10:48,480
وارد کردن چیزی از یک ماژول در حال حاضر به
337
00:10:48,480 –> 00:10:50,720
به محتویات یک ماژول که باید دسترسی داشته باشیم
338
00:10:50,720 –> 00:10:52,640
از عملگر نقطه استفاده کنید و من به شما نشان خواهم داد
339
00:10:52,640 –> 00:10:53,680
چگونه در حال حاضر
340
00:10:53,680 –> 00:10:55,600
کاری که من می خواهم انجام دهم در مثال من است
341
00:10:55,600 –> 00:10:57,600
من قصد دارم کالک خود را به عنوان کالک وارد کنم
342
00:10:57,600 –> 00:10:59,360
پس در حال حاضر این چه از آنجایی که این است
343
00:10:59,360 –> 00:11:01,839
پوشه اصلی یا ماژول اصلی
344
00:11:01,839 –> 00:11:03,279
اما من می خواهم آن را کوتاه کنم
345
00:11:03,279 –> 00:11:05,360
نام آن را به طوری که من به راحتی می توانم از آن در خود استفاده کنم
346
00:11:05,360 –> 00:11:06,959
کد و من مجبور نیستم تایپ کنم
347
00:11:06,959 –> 00:11:08,560
هر بار زیر خط کالک کنید پس الان هستم
348
00:11:08,560 –> 00:11:09,760
قصد واردات این
349
00:11:09,760 –> 00:11:11,839
به عنوان calc بنابراین هر زمان باید به a مراجعه کنم
350
00:11:11,839 –> 00:11:13,360
روش یا عملکرد خاص
351
00:11:13,360 –> 00:11:15,279
در داخل این اسکریپت یا این ماژول خواهم کرد
352
00:11:15,279 –> 00:11:16,959
فقط از این استفاده کن
353
00:11:16,959 –> 00:11:19,200
این مکان نگهدار نام این متغیر است
354
00:11:19,200 –> 00:11:20,959
اکنون دو متغیر a و b دارم
355
00:11:20,959 –> 00:11:22,880
و من 20 و 30 را در آنها ذخیره می کنم
356
00:11:22,880 –> 00:11:24,399
اولین کاری که می خواهم انجام دهم این است
357
00:11:24,399 –> 00:11:25,680
اساساً چهار عملیات
358
00:11:25,680 –> 00:11:27,360
من قصد دارم اضافه کردن یک و را چاپ کنم
359
00:11:27,360 –> 00:11:29,360
b سپس ضرب تفریق
360
00:11:29,360 –> 00:11:30,880
و تقسیم این دو عدد
361
00:11:30,880 –> 00:11:31,120
و
362
00:11:31,120 –> 00:11:33,040
هر بار برای انجام این عملیات من هستم
363
00:11:33,040 –> 00:11:35,120
از تابع add که هست استفاده می کنیم
364
00:11:35,120 –> 00:11:36,560
موجود در حساب من
365
00:11:36,560 –> 00:11:38,800
ماژول بنابراین برای انجام که من در حال حاضر
366
00:11:38,800 –> 00:11:40,240
کاراکترهای من را محاسبه کرد
367
00:11:40,240 –> 00:11:42,720
تنها کاری که میخواهم انجام دهم این است که اینها را فراخوانی کنم
368
00:11:42,720 –> 00:11:44,480
توابع با استفاده از عملگر نقطه که
369
00:11:44,480 –> 00:11:45,680
ما قبلا با آن آشنا هستیم
370
00:11:45,680 –> 00:11:47,600
بنابراین من می خواهم بگویم calc dot add and
371
00:11:47,600 –> 00:11:48,720
سپس من می خواهم از این دو عبور کنم
372
00:11:48,720 –> 00:11:50,240
آرگومان ها یا این دو متغیر
373
00:11:50,240 –> 00:11:51,680
بگویم که می خواهم این دو و را اضافه کنم
374
00:11:51,680 –> 00:11:52,720
به طور مشابه من قصد دارم آن را برای انجام
375
00:11:52,720 –> 00:11:53,600
منها کردن
376
00:11:53,600 –> 00:11:56,160
um ضرب و تقسیم به عنوان شما
377
00:11:56,160 –> 00:11:57,680
می توانید ببینید این نتایج من است
378
00:11:57,680 –> 00:11:59,839
وظایف در حال حاضر اگر من مجبور به انجام یک فهرست
379
00:11:59,839 –> 00:12:02,560
عملیات بر روی ماژول محاسبه می شود
380
00:12:02,560 –> 00:12:03,600
اساسا به من بدهید
381
00:12:03,600 –> 00:12:06,240
دسته ای از روش های داخلی یا دوندر
382
00:12:06,240 –> 00:12:06,639
که
383
00:12:06,639 –> 00:12:09,519
در حال حاضر بخشی از هر اسکریپت پایتون هستند
384
00:12:09,519 –> 00:12:11,519
به طور پیش فرض مانند داخلی
385
00:12:11,519 –> 00:12:13,279
بنابراین اگر من این را اجرا کنم فقط برای نشان دادن شما
386
00:12:13,279 –> 00:12:15,440
وقتی از تابع dir استفاده می کنم چه اتفاقی می افتد
387
00:12:15,440 –> 00:12:16,720
اساسا به من می دهد
388
00:12:16,720 –> 00:12:18,639
تمام توابع که بخشی از این است
389
00:12:18,639 –> 00:12:20,079
اسکریپت پایتون بنابراین این دو برابر می شود
390
00:12:20,079 –> 00:12:22,000
زیرنویس هایی که می بینید اساسا هستند
391
00:12:22,000 –> 00:12:22,480
اوه
392
00:12:22,480 –> 00:12:25,120
نشان دهنده روش های جادویی یا روش های dunder است
393
00:12:25,120 –> 00:12:25,760
و اینها هستند
394
00:12:25,760 –> 00:12:27,600
مانند روش های داخلی به عنوان بخشی از
395
00:12:27,600 –> 00:12:29,360
اسکریپت و اگر اینجا را دیدید اضافه کنید
396
00:12:29,360 –> 00:12:31,440
تقسیم prod و sub اینها هستند
397
00:12:31,440 –> 00:12:33,200
روش هایی که قبلا در مورد آنها تعریف کردیم
398
00:12:33,200 –> 00:12:33,920
در فیلمنامه ما
399
00:12:33,920 –> 00:12:36,560
خودمان اکنون کمی عمیق تر برویم یا
400
00:12:36,560 –> 00:12:38,800
با جزئیات بیشتر در مورد آنچه اتفاق می افتد زمانی که ما
401
00:12:38,800 –> 00:12:41,040
یک ماژول جستجو کنید
402
00:12:41,040 –> 00:12:42,240
در واقع ببینید چه اتفاقی می افتد
403
00:12:42,240 –> 00:12:44,560
بنابراین چه اتفاقی می افتد زمانی است که برای مثال ما
404
00:12:44,560 –> 00:12:45,680
بیانیه را اجرا کنید
405
00:12:45,680 –> 00:12:48,320
همانطور که ما انجام دادیم، مایکالک را به عنوان کالک وارد کنید
406
00:12:48,320 –> 00:12:49,920
در اینجا بنابراین اولین مراحل که
407
00:12:49,920 –> 00:12:51,760
در واقع مفسر هستند
408
00:12:51,760 –> 00:12:53,279
عبارت فوق را اجرا می کند
409
00:12:53,279 –> 00:12:55,040
و این اسکریپت پایتون را جستجو می کند
410
00:12:55,040 –> 00:12:56,959
در لیستی از دایرکتوری های مونتاژ شده از
411
00:12:56,959 –> 00:12:58,399
این منابع زیر که می بینید
412
00:12:58,399 –> 00:12:59,120
در اینجا بنابراین
413
00:12:59,120 –> 00:13:01,279
دایرکتوری را می گیرد که از آن
414
00:13:01,279 –> 00:13:02,399
اسکریپت ورودی اجرا شد
415
00:13:02,399 –> 00:13:03,920
یا دایرکتوری فعلی اگر
416
00:13:03,920 –> 00:13:05,839
مترجم به صورت تعاملی اجرا می شود
417
00:13:05,839 –> 00:13:07,279
که در حال حاضر همینطور است
418
00:13:07,279 –> 00:13:08,639
ثانیاً همه موارد را فهرست می کند
419
00:13:08,639 –> 00:13:10,560
دایرکتوری های موجود در مسیر پایتون
420
00:13:10,560 –> 00:13:12,800
محیطی که شما راه اندازی کرده اید که می توانید
421
00:13:12,800 –> 00:13:14,240
راه اندازی کنید یا می توانید بعداً به عنوان تغییر دهید
422
00:13:14,240 –> 00:13:16,240
خوب و این فرمت برای مسیر پایتون
423
00:13:16,240 –> 00:13:18,639
البته وابسته به سیستم عامل است اما باید
424
00:13:18,639 –> 00:13:20,399
از متغیر محیط مسیر تقلید کنید که
425
00:13:20,399 –> 00:13:21,760
می بینیم در
426
00:13:21,760 –> 00:13:23,600
سیستم های ویندوز و سپس دیگری
427
00:13:23,600 –> 00:13:25,120
منبع یا دایرکتوری های دیگر است
428
00:13:25,120 –> 00:13:26,959
اساسا یک لیست وابسته به نصب
429
00:13:26,959 –> 00:13:27,839
از دسته ها
430
00:13:27,839 –> 00:13:29,360
در زمانی که پایتون است پیکربندی شده است
431
00:13:29,360 –> 00:13:31,440
اکنون مسیر جستجوی حاصل را نصب کرد
432
00:13:31,440 –> 00:13:33,279
که در پایتون قابل دسترسی است
433
00:13:33,279 –> 00:13:35,600
متغیر system.path
434
00:13:35,600 –> 00:13:37,440
این اساساً از یک ماژول به دست می آید
435
00:13:37,440 –> 00:13:39,920
به نام sys پس اگر این را وارد کنم این و
436
00:13:39,920 –> 00:13:41,920
من sys.path را انجام دادم اکنون همه اینها هستند
437
00:13:41,920 –> 00:13:43,680
دایرکتوری هایی که می خواهیم نگاه کنیم
438
00:13:43,680 –> 00:13:44,160
برای
439
00:13:44,160 –> 00:13:45,680
وقتی می خواهیم هر کدام را جستجو کنیم
440
00:13:45,680 –> 00:13:47,760
ماژول خاص بنابراین اگر من انجام می دهم
441
00:13:47,760 –> 00:13:50,639
اوه کایاک من را وارد کنید یا سیستم عامل را وارد کنید
442
00:13:50,639 –> 00:13:51,760
فقط به جریان نگاه می کنیم
443
00:13:51,760 –> 00:13:53,120
دایرکتوری که من روی آن کار می کنم
444
00:13:53,120 –> 00:13:55,440
همچنین به همه اینها نگاه خواهد کرد
445
00:13:55,440 –> 00:13:58,480
دایرکتوری هایی که به عنوان راه اندازی شده اند
446
00:13:58,480 –> 00:14:01,440
می توانید دایرکتوری ها یا مسیرها را در آن بگویید
447
00:14:01,440 –> 00:14:02,240
را
448
00:14:02,240 –> 00:14:04,399
system.path در این ویدیو خواهیم بود
449
00:14:04,399 –> 00:14:06,240
پوشش موضوع بسته ها
450
00:14:06,240 –> 00:14:08,800
حالا چه می شود اگر ما یک بسیار بزرگ توسعه دهیم
451
00:14:08,800 –> 00:14:10,959
برنامه کاربردی در پایتون که شامل بسیاری از
452
00:14:10,959 –> 00:14:11,839
ماژول های مختلف
453
00:14:11,839 –> 00:14:13,360
و ما بسیاری از ماژول های مختلف داریم
454
00:14:13,360 –> 00:14:14,399
که نام های مشابه دارند و
455
00:14:14,399 –> 00:14:15,279
قابلیت ها
456
00:14:15,279 –> 00:14:17,279
و همه آنها مانند نگهداری می شوند یا ریخته می شوند
457
00:14:17,279 –> 00:14:18,959
در همان مکانی که می شود
458
00:14:18,959 –> 00:14:20,639
ردیابی این ماژول ها بسیار دشوار است
459
00:14:20,639 –> 00:14:22,399
اگر راهی برای سازماندهی و
460
00:14:22,399 –> 00:14:23,839
دسترسی به این در بسیار
461
00:14:23,839 –> 00:14:26,160
ساده تر و منظم تر به خوبی
462
00:14:26,160 –> 00:14:27,839
بسته ها به ما این امکان را می دهند که این کار را انجام دهیم
463
00:14:27,839 –> 00:14:30,560
بسته ها یک ساختار سلسله مراتبی هستند
464
00:14:30,560 –> 00:14:32,480
فضای نام ماژول با استفاده از نقطه
465
00:14:32,480 –> 00:14:33,120
نشانه گذاری
466
00:14:33,120 –> 00:14:34,880
و این همان علامت نقطه است که
467
00:14:34,880 –> 00:14:36,320
زمانی که بخواهیم استفاده می کنیم
468
00:14:36,320 –> 00:14:38,480
دسترسی به روش ها یا توابعی که هستند
469
00:14:38,480 –> 00:14:40,240
بخشی از کلاس ها یا ماژول های دیگر
470
00:14:40,240 –> 00:14:42,639
بنابراین بیایید سعی کنیم به برخی نگاه کنیم
471
00:14:42,639 –> 00:14:44,320
مثال هایی برای درک منظور ما
472
00:14:44,320 –> 00:14:46,880
بنابراین من یک دایرکتوری به نام pkg this دارم
473
00:14:46,880 –> 00:14:47,360
می تواند باشد
474
00:14:47,360 –> 00:14:49,760
اساساً به عنوان چیزی که ما الف می نامیم رفتار می شود
475
00:14:49,760 –> 00:14:51,680
بسته در حال حاضر در بسته ما ما دو
476
00:14:51,680 –> 00:14:54,160
ماژول ها حالت یک نقطه py و مد دو نقطه p
477
00:14:54,160 –> 00:14:54,480
توسط
478
00:14:54,480 –> 00:14:56,240
و آنچه را که قرار است در حالت یک ذخیره کنیم
479
00:14:56,240 –> 00:14:58,480
و mod two dot p py به شرح زیر است
480
00:14:58,480 –> 00:15:00,560
بنابراین من می خواهم یک تابع به نام تعریف کنم
481
00:15:00,560 –> 00:15:02,560
foo و من می روم چاپ کنم
482
00:15:02,560 –> 00:15:04,800
این عبارت خاص mod 1 و سپس
483
00:15:04,800 –> 00:15:06,079
من اساسا می خواهم بگویم
484
00:15:06,079 –> 00:15:09,440
foo و سپس در کلاس 4 می گویم
485
00:15:09,440 –> 00:15:12,320
من یک دستور پاس خالی خواهم داشت
486
00:15:12,320 –> 00:15:13,920
به همین ترتیب من یک تابع را تعریف می کنم
487
00:15:13,920 –> 00:15:14,639
نوار نامیده می شود
488
00:15:14,639 –> 00:15:16,720
در mod 2 dot py که در آن قرار است چاپ کنم
489
00:15:16,720 –> 00:15:19,279
این بیانیه بنابراین اساسا mod 1 dot py
490
00:15:19,279 –> 00:15:21,279
دارای یک عملکرد ساده در جایی که من می خواهم
491
00:15:21,279 –> 00:15:23,440
این عبارت را چاپ کنید و mod 2 dot py
492
00:15:23,440 –> 00:15:24,720
دارای یک تابع ساده است پس من می خواهم به
493
00:15:24,720 –> 00:15:26,079
این بیانیه را چاپ کنید
494
00:15:26,079 –> 00:15:27,519
و من قصد دارم آنها را در mod 1 ذخیره کنم و
495
00:15:27,519 –> 00:15:29,440
mod 2 dot py به ترتیب
496
00:15:29,440 –> 00:15:31,440
و این دو ماژول را من می خواهم ذخیره کنم
497
00:15:31,440 –> 00:15:33,120
در دایرکتوری pkg
498
00:15:33,120 –> 00:15:34,959
در پوشه محلی من اکنون این کار را انجام داده ام
499
00:15:34,959 –> 00:15:36,720
این بنابراین ما می توانیم از قبل دریافت کنیم
500
00:15:36,720 –> 00:15:38,639
اگر بخواهم اکنون با این کار کنم
501
00:15:38,639 –> 00:15:40,160
به اینها دسترسی داشته باشید
502
00:15:40,160 –> 00:15:42,720
ماژول های خاص از پوشه pkg i
503
00:15:42,720 –> 00:15:44,639
به سادگی می توانید از دستور import استفاده کنید
504
00:15:44,639 –> 00:15:46,839
و از علامت نقطه استفاده کنید تا بتوانم بگویم
505
00:15:46,839 –> 00:15:49,279
pkg.mod1 بنابراین این به داخل خواهد شد
506
00:15:49,279 –> 00:15:52,240
این ماژول mod1 را از آن وارد می کند
507
00:15:52,240 –> 00:15:53,199
پوشه pkg
508
00:15:53,199 –> 00:15:54,959
به همین ترتیب من می توانم همین کار را انجام دهم
509
00:15:54,959 –> 00:15:57,920
ماژول mod 2 از پوشه pkg در
510
00:15:57,920 –> 00:15:58,639
همان خط
511
00:15:58,639 –> 00:16:00,560
بنابراین اکنون که فقط وارد شده است
512
00:16:00,560 –> 00:16:02,399
به سادگی این و این را اجرا کنید
513
00:16:02,399 –> 00:16:05,120
واردات هر آنچه شما نیاز دارید در حال حاضر اگر ما
514
00:16:05,120 –> 00:16:06,720
خواستن
515
00:16:06,720 –> 00:16:09,600
عملکردی را انجام دهید که بخشی از آن بود
516
00:16:09,600 –> 00:16:10,720
mod1 یا py
517
00:16:10,720 –> 00:16:13,279
ما فقط می توانیم نماد نقطه و را گسترش دهیم
518
00:16:13,279 –> 00:16:14,240
از تابع استفاده کنید
519
00:16:14,240 –> 00:16:16,240
همانطور که در اینجا می بینید اجرا می شود
520
00:16:16,240 –> 00:16:17,600
این دستور چاپ هر چه که بود
521
00:16:17,600 –> 00:16:18,320
قرار است انجام دهد
522
00:16:18,320 –> 00:16:21,199
به طور مشابه می توانم تابعی را که
523
00:16:21,199 –> 00:16:22,000
بخشی از مد بود
524
00:16:22,000 –> 00:16:24,800
2 ماژول با گسترش نماد نقطه
525
00:16:24,800 –> 00:16:25,199
به آن
526
00:16:25,199 –> 00:16:27,199
به همین ترتیب اکنون به روش دیگری که من
527
00:16:27,199 –> 00:16:29,040
می تواند استناد کند
528
00:16:29,040 –> 00:16:31,040
من می توانم یک بسته را مستقیما وارد کنم
529
00:16:31,040 –> 00:16:32,959
وارد کردن خود بسته با استفاده از
530
00:16:32,959 –> 00:16:33,519
وارد كردن
531
00:16:33,519 –> 00:16:37,199
pkg و عدم دسترسی به هیچ یک از
532
00:16:37,199 –> 00:16:39,040
ماژول های خاص در آن اکنون بیایید ببینیم
533
00:16:39,040 –> 00:16:40,320
وقتی این کار را انجام می دهیم چه اتفاقی می افتد
534
00:16:40,320 –> 00:16:41,839
بنابراین فقط برای این مثال چیزی که من می خواهم
535
00:16:41,839 –> 00:16:43,680
کاری که باید انجام دهم این است که هسته را دوباره راه اندازی کنم
536
00:16:43,680 –> 00:16:46,480
به طوری که ماژول های pkg که بودند
537
00:16:46,480 –> 00:16:47,519
قبلا وارد شده است
538
00:16:47,519 –> 00:16:49,120
پاک شوید تا ببینیم چه اتفاقی می افتد
539
00:16:49,120 –> 00:16:50,880
وقتی این را به تنهایی اجرا می کنیم
540
00:16:50,880 –> 00:16:52,959
حالا اگر می بینید من این را وارد نکرده ام
541
00:16:52,959 –> 00:16:55,199
حالا ببینم میتونم دسترسی داشته باشم
542
00:16:55,199 –> 00:16:58,240
من mod 1 و mod 2. حالا اگر اینجا را ببینید
543
00:16:58,240 –> 00:16:59,839
برای من یک خطا ایجاد می کند و این است
544
00:16:59,839 –> 00:17:00,480
زیرا
545
00:17:00,480 –> 00:17:03,120
فقط با استفاده از دستور import on
546
00:17:03,120 –> 00:17:04,400
یک بسته خاص
547
00:17:04,400 –> 00:17:07,119
فقط واردات می توان گفت بسته
548
00:17:07,119 –> 00:17:07,839
فضای نام
549
00:17:07,839 –> 00:17:10,240
اما در واقع هیچ کدام را وارد نمی کند
550
00:17:10,240 –> 00:17:10,880
را
551
00:17:10,880 –> 00:17:12,799
ماژول ها و فایل هایی که بخشی از این بودند
552
00:17:12,799 –> 00:17:15,280
بسته بنابراین اگر من مود 1 را می خواستم
553
00:17:15,280 –> 00:17:16,559
از این بسته من باید
554
00:17:16,559 –> 00:17:20,000
در واقع بگویید pkg.mod 1 را مستقیم وارد کنید
555
00:17:20,000 –> 00:17:22,959
و من نمی توانم به سادگی بگویم واردات pkg و
556
00:17:22,959 –> 00:17:24,559
پایتون همه چیز را وارد نمی کند
557
00:17:24,559 –> 00:17:26,160
به تنهایی بخشی از یک بسته است
558
00:17:26,160 –> 00:17:29,440
من باید خودم آن را به طور خاص مشخص کنم
559
00:17:29,440 –> 00:17:31,280
اکنون می خواهم ایجاد کنم و خواهم ساخت
560
00:17:31,280 –> 00:17:32,960
یعنی یکی دیگه رو بهت نشون میدم
561
00:17:32,960 –> 00:17:34,960
نوع واردات از بسته با استفاده از
562
00:17:34,960 –> 00:17:36,080
اپراتور ستاره
563
00:17:36,080 –> 00:17:38,320
بنابراین من یک بار دیگر این بسته pkg را دارم
564
00:17:38,320 –> 00:17:39,520
الان میرم ذخیره کنم
565
00:17:39,520 –> 00:17:42,720
ام سه منظورم چهار ماژول مختلف است
566
00:17:42,720 –> 00:17:43,760
در این بسته
567
00:17:43,760 –> 00:17:46,559
mod یک یک نقطه p توسط mod دو دو دو
568
00:17:46,559 –> 00:17:48,160
نقطه p توسط و من قبلا این کار را برای شما انجام داده ام
569
00:17:48,160 –> 00:17:49,280
نیازی به زحمت نیست
570
00:17:49,280 –> 00:17:51,760
اوم می بینید که در حال انجام آن هستم زیرا
571
00:17:51,760 –> 00:17:52,480
من قبلا
572
00:17:52,480 –> 00:17:54,080
این فایل ها و کارهایی که من انجام داده ام ایجاد کردم
573
00:17:54,080 –> 00:17:56,320
در حالت یک و یک نقطه py است
574
00:17:56,320 –> 00:17:58,720
من تعریف کرده ام این عبارت را نوشته ام
575
00:17:58,720 –> 00:18:00,240
و من آن را در اسکریپت پایتون ذخیره کرده ام
576
00:18:00,240 –> 00:18:01,919
به همین ترتیب من یک پایتون دیگر ایجاد کرده ام
577
00:18:01,919 –> 00:18:02,640
اسکریپت
578
00:18:02,640 –> 00:18:05,840
اسکریپت به نام mod 222 dot py و من دارم
579
00:18:05,840 –> 00:18:08,000
اساسا این را در کد و نوشته شده است
580
00:18:08,000 –> 00:18:10,559
من به سادگی این کار را برای mod 333 dot py انجام دادم
581
00:18:10,559 –> 00:18:12,799
و من دیگری را برای mod 4 dot py انجام دادم
582
00:18:12,799 –> 00:18:14,640
حالا وقتی این کار را انجام دادم ذخیره کردم
583
00:18:14,640 –> 00:18:15,840
این اسکریپت های پایتون
584
00:18:15,840 –> 00:18:19,919
داخل بسته یا کیلوگرم من
585
00:18:19,919 –> 00:18:22,160
بسته بنابراین اکنون کاری که می خواهم انجام دهم این است
586
00:18:22,160 –> 00:18:23,840
من قصد دارم ایجاد کنم من قصد دارم اجرا کنم
587
00:18:23,840 –> 00:18:24,640
این دستور
588
00:18:24,640 –> 00:18:28,000
اگر این را از pkg dot mod 333 می بینید
589
00:18:28,000 –> 00:18:30,720
وارد کردن شروع می شود، بنابراین یک بار این را اکنون اجرا می کنم
590
00:18:30,720 –> 00:18:31,440
من می خواهم بگویم
591
00:18:31,440 –> 00:18:33,200
دایرکتوری چاپ و دایرکتوری چاپ
592
00:18:33,200 –> 00:18:34,880
اساسا تمام توابع را به من خواهد گفت
593
00:18:34,880 –> 00:18:36,720
که در فهرست فعلی من وجود دارد
594
00:18:36,720 –> 00:18:38,480
اگر اینجا را ببینید این تعصب وجود دارد
595
00:18:38,480 –> 00:18:40,960
تابعی که بخشی از mod 333 بود
596
00:18:40,960 –> 00:18:41,520
مدول
597
00:18:41,520 –> 00:18:44,320
حالا اگر این را تغییر دهم و اگر من
598
00:18:44,320 –> 00:18:45,760
مود وارداتی 111
599
00:18:45,760 –> 00:18:47,360
و اگر من همین کار را انجام دادم، خواهید دید
600
00:18:47,360 –> 00:18:49,679
foo اکنون به عنوان بخشی از اضافه شده است
601
00:18:49,679 –> 00:18:51,600
این دایرکتوری جهت و اینها هستند
602
00:18:51,600 –> 00:18:53,440
همه توابع که بخشی از این بودند
603
00:18:53,440 –> 00:18:55,120
ماژول های مختلف جایی که من وارد می کنم
604
00:18:55,120 –> 00:18:56,960
از و این همان چیزی است که تابع ستاره است
605
00:18:56,960 –> 00:18:57,280
میکند
606
00:18:57,280 –> 00:18:58,799
آنچه تابع ستاره انجام خواهد داد این است
607
00:18:58,799 –> 00:19:00,799
اساسا به پایتون می گوید خوب است
608
00:19:00,799 –> 00:19:03,840
بیانیه از pkg.mod111 همگام است
609
00:19:03,840 –> 00:19:05,840
بنابراین می گوید که اوم خوب نگاه کنید
610
00:19:05,840 –> 00:19:07,679
این دایرکتوری یا این
611
00:19:07,679 –> 00:19:10,240
بسته بندی کنید و این ماژول و در این را پیدا کنید
612
00:19:10,240 –> 00:19:10,720
مدول
613
00:19:10,720 –> 00:19:12,799
هر چیزی را که در آن وجود دارد وارد کنید
614
00:19:12,799 –> 00:19:15,760
تا این لحظه پس این یکی دیگر است
615
00:19:15,760 –> 00:19:18,320
راه دیگری برای واردات اساسا اوه
616
00:19:18,320 –> 00:19:19,679
فایل ها یا توابع
617
00:19:19,679 –> 00:19:21,440
از یک بسته خاص و الف
618
00:19:21,440 –> 00:19:23,200
ماژول خاص خاص در آن
619
00:19:23,200 –> 00:19:23,760
بسته بندی
620
00:19:23,760 –> 00:19:25,760
بنابراین بله، این یک ویدیوی بسیار کوتاه بود
621
00:19:25,760 –> 00:19:26,880
بسته ها در پایتون
622
00:19:26,880 –> 00:19:29,200
اوه نتیجه گیری این است که بسته ها
623
00:19:29,200 –> 00:19:30,320
اساسا هستند
624
00:19:30,320 –> 00:19:32,720
روشی سازمان یافته برای ذخیره سازی بسیاری
625
00:19:32,720 –> 00:19:33,679
ماژول های مختلف
626
00:19:33,679 –> 00:19:35,760
که ما ممکن است در یک بسیار ایجاد کرده باشیم
627
00:19:35,760 –> 00:19:37,520
برنامه بزرگ
628
00:19:37,520 –> 00:19:39,600
و با استفاده از این ماژول ها قابل دسترسی است
629
00:19:39,600 –> 00:19:41,760
نماد آشنا. توجه داشته باشید که
630
00:19:41,760 –> 00:19:43,840
ما در نمونه های دیگری مانند
631
00:19:43,840 –> 00:19:45,440
روش های زمانی که ما با آنها کار می کردیم
632
00:19:45,440 –> 00:19:46,640
کلاس ها و اشیاء
633
00:19:46,640 –> 00:19:48,720
در این ویدیو ما یک
634
00:19:48,720 –> 00:19:50,320
مقدمه ای بر مفهوم
635
00:19:50,320 –> 00:19:51,360
ژنراتورها
636
00:19:51,360 –> 00:19:54,080
بنابراین پایتون یک ژنراتور ارائه می دهد که این است
637
00:19:54,080 –> 00:19:54,799
مثل یک
638
00:19:54,799 –> 00:19:58,000
عملکردی که ما می توانیم خودمان را ایجاد کنیم
639
00:19:58,000 –> 00:20:00,720
تکرار کننده در یک تابع مولد که ما استفاده می کنیم
640
00:20:00,720 –> 00:20:02,720
بیانیه بازده به جای
641
00:20:02,720 –> 00:20:04,400
عبارت بازگشتی که برای آن استفاده می کنیم
642
00:20:04,400 –> 00:20:06,000
توابع استاندارد
643
00:20:06,000 –> 00:20:07,840
بنابراین بیایید به یک ژنراتور ساده نگاه کنیم
644
00:20:07,840 –> 00:20:11,039
اول از همه در اینجا من تعریف کرده ام
645
00:20:11,039 –> 00:20:13,919
یک ژنراتور به نام ژنراتور من کجاست
646
00:20:13,919 –> 00:20:14,880
من دارم انجام میدم
647
00:20:14,880 –> 00:20:18,080
مثل سه تا هست مثل سه
648
00:20:18,080 –> 00:20:20,640
توابع یا سه وظیفه که من انجام می دهم
649
00:20:20,640 –> 00:20:22,559
اوه اولین مورد زمانی است که من آن را چاپ می کنم
650
00:20:22,559 –> 00:20:23,520
اولین مورد
651
00:20:23,520 –> 00:20:25,919
و من مقدار 10 را به دست می دهم پس من هستم
652
00:20:25,919 –> 00:20:27,840
پس از چاپ مورد دوم، 20 به دست می آید
653
00:20:27,840 –> 00:20:30,080
من آخرین مورد را با استفاده از 30 چاپ می کنم.
654
00:20:30,080 –> 00:20:33,120
پس بیایید ببینیم چگونه از این استفاده کنیم
655
00:20:33,120 –> 00:20:35,039
اکنون از آنجایی که می دانیم ژنراتور من همان است
656
00:20:35,039 –> 00:20:37,520
تابع از کلمه کلیدی yield استفاده می کند
657
00:20:37,520 –> 00:20:39,360
هر بار که از کلمه کلیدی بعدی ما استفاده می کنیم
658
00:20:39,360 –> 00:20:41,360
ادامه خواهد داد آنچه در این مرحله بعدی است
659
00:20:41,360 –> 00:20:42,240
عملکرد
660
00:20:42,240 –> 00:20:45,360
بنابراین بیایید ژنراتور را ذخیره کنیم
661
00:20:45,360 –> 00:20:49,840
در نسل من
662
00:20:50,000 –> 00:20:53,120
بنابراین اکنون ما تکرار کننده را در آن ذخیره کرده ایم
663
00:20:53,120 –> 00:20:54,480
این متغیر تابع
664
00:20:54,480 –> 00:20:57,600
به نام gen یا gen حالا ببینیم کی هستیم
665
00:20:57,600 –> 00:20:57,919
انجام دادن
666
00:20:57,919 –> 00:21:01,840
بعدی و استفاده می کنیم
667
00:21:01,840 –> 00:21:05,440
چه اتفاقی میافتد پس اولین کار این است
668
00:21:05,440 –> 00:21:07,039
انجام شده یا اولین
669
00:21:07,039 –> 00:21:09,679
از جایی که این را به دست می آوریم، تکرار انجام می شود
670
00:21:09,679 –> 00:21:11,840
اولین دستور تسلیم انجام می شود
671
00:21:11,840 –> 00:21:13,280
خیلی خب، ببینیم وقتی ما چه اتفاقی می افتد
672
00:21:13,280 –> 00:21:15,840
بعدی را دوباره انجام دهید
673
00:21:15,840 –> 00:21:18,960
ژنرال الان
674
00:21:18,960 –> 00:21:21,120
همانطور که می بینید ما مورد دوم و ما را دریافت می کنیم
675
00:21:21,120 –> 00:21:22,480
20 بگیر
676
00:21:22,480 –> 00:21:24,080
اجازه دهید آن را برای بعدی انجام دهیم بیایید آن را انجام دهیم
677
00:21:24,080 –> 00:21:26,400
یک بار دیگر زیرا یک کار دیگر وجود دارد
678
00:21:26,400 –> 00:21:29,120
یک تکراری دیگر در درون شما وجود دارد
679
00:21:29,120 –> 00:21:31,280
این را ببینید اکنون یک سوال معتبر این است که چیست
680
00:21:31,280 –> 00:21:33,120
اگر دوباره نسل بعدی را انجام دهیم این اتفاق خواهد افتاد
681
00:21:33,120 –> 00:21:36,159
چون بعد از این چاه چیزی نیست
682
00:21:36,159 –> 00:21:38,960
بزار ببینیم چی میشه
683
00:21:39,039 –> 00:21:41,280
همانطور که می بینید باید یک خطا دریافت کنیم
684
00:21:41,280 –> 00:21:43,679
خطای توقف تکرار این یکی دیگر است
685
00:21:43,679 –> 00:21:48,480
استثنا داخلی که زمانی اتفاق می افتد که ما
686
00:21:48,480 –> 00:21:51,520
مانند به آخر رسیده اند
687
00:21:51,520 –> 00:21:54,640
موضوع یک تکرار شونده، بنابراین ما یک توقف می گیریم
688
00:21:54,640 –> 00:21:57,360
خطای تکرار
689
00:21:57,679 –> 00:22:00,320
بنابراین اکنون یک تفاوت کلیدی بین a
690
00:22:00,320 –> 00:22:01,039
ژنراتور
691
00:22:01,039 –> 00:22:03,520
و یک تابع این است که وقتی a را اجرا می کنیم
692
00:22:03,520 –> 00:22:04,320
عملکرد
693
00:22:04,320 –> 00:22:06,159
لحظه ای که بیانیه بازگشت را می زنیم
694
00:22:06,159 –> 00:22:07,360
در یک تابع
695
00:22:07,360 –> 00:22:09,440
یا زمانی که تابعی مانند اجرا می کنیم
696
00:22:09,440 –> 00:22:10,960
هر متغیری که ذخیره شده بود
697
00:22:10,960 –> 00:22:12,080
داخل گم شده اند
698
00:22:12,080 –> 00:22:13,919
و هلاک می شوند مگر اینکه باشند
699
00:22:13,919 –> 00:22:15,840
جهانی تعریف شده است
700
00:22:15,840 –> 00:22:17,679
و عملکرد به طور کامل انجام شده است
701
00:22:17,679 –> 00:22:19,520
اجرا می کنیم و تابع را ترک می کنیم
702
00:22:19,520 –> 00:22:20,559
به صورت کامل
703
00:22:20,559 –> 00:22:22,880
در حالی که وقتی صحبت از یک ژنراتور می شود
704
00:22:22,880 –> 00:22:24,480
وقتی تابع بازده را می زنیم
705
00:22:24,480 –> 00:22:26,720
ما در واقع این را به طور کامل ترک نمی کنیم
706
00:22:26,720 –> 00:22:28,799
تابع بنابراین اولین بار بازده است
707
00:22:28,799 –> 00:22:29,280
یافت
708
00:22:29,280 –> 00:22:32,799
ما 10 می گیریم اما ژنراتور به خاطر می آورد
709
00:22:32,799 –> 00:22:35,039
موقعیت آن در داخل این تابع
710
00:22:35,039 –> 00:22:37,360
بنابراین دفعه بعد از ما بعدی استفاده می کنیم
711
00:22:37,360 –> 00:22:38,159
در حقیقت
712
00:22:38,159 –> 00:22:39,919
به تکرار بعدی بروید و سپس ما
713
00:22:39,919 –> 00:22:41,440
به تکرار بعدی بروید
714
00:22:41,440 –> 00:22:43,760
بنابراین می توانید به عنوان یک ژنراتور فکر کنید
715
00:22:43,760 –> 00:22:45,200
یه جورایی حافظه داره
716
00:22:45,200 –> 00:22:47,919
اگر منطقی باشد، راهی برای دوست داشتن است
717
00:22:47,919 –> 00:22:50,000
ایجاد تکرار در پایتون
718
00:22:50,000 –> 00:22:52,559
یا ایجاد تکرار کننده در پایتون تا به
719
00:22:52,559 –> 00:22:53,440
درک
720
00:22:53,440 –> 00:22:55,760
چه تفاوتی بین عملکرد
721
00:22:55,760 –> 00:22:57,679
فرمان و دستور بازگشت انجام می دهد
722
00:22:57,679 –> 00:23:01,520
بیایید همان تابع را درست در نظر بگیریم
723
00:23:01,520 –> 00:23:04,720
و اجازه دهید پس از آن یک بازگشت را در اینجا قرار دهیم
724
00:23:04,720 –> 00:23:06,080
این خاص
725
00:23:06,080 –> 00:23:09,039
بازده دوم خوبه بیایید همین کار را بکنیم
726
00:23:09,039 –> 00:23:09,600
چیز
727
00:23:09,600 –> 00:23:12,640
می گوییم ژن برابر من است
728
00:23:12,640 –> 00:23:16,320
ژنراتور و
729
00:23:16,320 –> 00:23:19,440
بیایید شروع کنیم اوه بله شروع کنیم
730
00:23:19,440 –> 00:23:21,600
انجام نسل بعدی و دیدن وجود دارد
731
00:23:21,600 –> 00:23:23,520
اولین معامله ابتدا استاندارد خواهد بود
732
00:23:23,520 –> 00:23:24,880
مورد 10
733
00:23:24,880 –> 00:23:27,120
بعدی دوباره قرار است بگوید
734
00:23:27,120 –> 00:23:28,960
مورد دوم و سپس 20
735
00:23:28,960 –> 00:23:31,039
اما حالا اگر متوجه شدید بازگشتی وجود داشته است
736
00:23:31,039 –> 00:23:32,720
من اینجا گذاشتم
737
00:23:32,720 –> 00:23:34,880
از نظر فنی وقتی دومی را انجام دادم
738
00:23:34,880 –> 00:23:37,120
بعد، نه تنها 20 به دست می آورد، بلکه می شود
739
00:23:37,120 –> 00:23:39,600
این تابع بازگشتی را نیز اجرا کرد
740
00:23:39,600 –> 00:23:41,360
یا این عبارت بازگشت پس بیایید ببینیم
741
00:23:41,360 –> 00:23:44,880
اگر دوباره انجام دهم چه اتفاقی می افتد
742
00:23:47,679 –> 00:23:49,520
همانطور که می بینید من متوقف شده ام
743
00:23:49,520 –> 00:23:51,919
تکرار ظاهرا زودتر از من
744
00:23:51,919 –> 00:23:52,720
قبل از
745
00:23:52,720 –> 00:23:54,000
و این به این دلیل است که من از آن استفاده کرده ام
746
00:23:54,000 –> 00:23:55,760
تابع بازگشت و ما در بازگشت
747
00:23:55,760 –> 00:23:57,600
بیانیه و آنچه که انجام شده است
748
00:23:57,600 –> 00:24:00,799
اگر این را کاملاً رها کرده باشیم
749
00:24:00,799 –> 00:24:03,200
عملکرد به طوری که به صحبت و وجود دارد
750
00:24:03,200 –> 00:24:05,919
هیچ چیز بعدی به عنوان صحبت کردن تا ما دریافت کنید
751
00:24:05,919 –> 00:24:07,279
این تکرار بالا
752
00:24:07,279 –> 00:24:09,440
و این تفاوت بین
753
00:24:09,440 –> 00:24:11,919
بازده و بازگشت
754
00:24:11,919 –> 00:24:13,520
اکنون در مثال بعدی که می خواهم
755
00:24:13,520 –> 00:24:15,520
به شما نشان می دهد که چگونه از یک تابع مولد استفاده می کنیم
756
00:24:15,520 –> 00:24:16,240
در محل
757
00:24:16,240 –> 00:24:19,279
حلقه for یا برای حلقه for پس اجازه دهید
758
00:24:19,279 –> 00:24:20,080
اینو بگیر
759
00:24:20,080 –> 00:24:22,480
هر آنچه در اینجا و من تعریف کرده ام
760
00:24:22,480 –> 00:24:24,880
تابعی به نام get sequence تا x
761
00:24:24,880 –> 00:24:27,760
و آنچه این کار انجام خواهد داد اساساً همین است
762
00:24:27,760 –> 00:24:29,520
به چاپ ادامه خواهد داد
763
00:24:29,520 –> 00:24:32,400
چاپ اعداد تا هر چه ما
764
00:24:32,400 –> 00:24:34,640
در اینجا به جای x وارد شده اند
765
00:24:34,640 –> 00:24:38,320
بنابراین اگر بگویم دنباله برابر است با
766
00:24:38,320 –> 00:24:40,960
بیا آه
767
00:24:41,679 –> 00:24:45,440
این را کاملاً کپی کنید و بگویید من می خواهم
768
00:24:45,440 –> 00:24:47,200
من می خواهم به ترتیب هر عدد را می خواهم
769
00:24:47,200 –> 00:24:49,279
تا 10 خوب بدون احتساب 10 از
770
00:24:49,279 –> 00:24:49,679
دوره
771
00:24:49,679 –> 00:24:52,640
چون پایتون با صفر درست شروع می شود
772
00:24:52,640 –> 00:24:53,919
بیا انجامش بدیم
773
00:24:53,919 –> 00:24:56,960
و اوم حالا ببینیم
774
00:24:56,960 –> 00:25:00,240
بنابراین عدد اول 0 به دست خواهد آمد
775
00:25:00,240 –> 00:25:03,919
و حالا اگر دوباره این کار را انجام دادم
776
00:25:03,919 –> 00:25:06,960
باید به من 1 2 بدهد و من می توانم نگه دارم
777
00:25:06,960 –> 00:25:09,360
رفتن
778
00:25:10,880 –> 00:25:15,360
تا زمانی که روی مقدار 9 توقف کنم
779
00:25:15,360 –> 00:25:19,440
همانطور که در اینجا می بینید 8
780
00:25:19,440 –> 00:25:21,919
9 اکنون باید تکرار توقف را دریافت کنم
781
00:25:21,919 –> 00:25:22,480
خطا
782
00:25:22,480 –> 00:25:24,480
زیرا به پایان آن رسیده ایم
783
00:25:24,480 –> 00:25:25,520
تکرار ما
784
00:25:25,520 –> 00:25:27,440
بنابراین این یک روش استفاده از ژنراتور است
785
00:25:27,440 –> 00:25:29,919
توابع برای حلقه های for
786
00:25:29,919 –> 00:25:32,240
بنابراین یک مثال شسته و رفته دیگر جایی که ما هستیم
787
00:25:32,240 –> 00:25:34,000
قصد استفاده از ژنراتور
788
00:25:34,000 –> 00:25:37,760
در مورد اعداد فیبوناچی است
789
00:25:37,760 –> 00:25:40,880
پس بیایید از آن استفاده کنیم تا ببینیم چگونه می توانیم
790
00:25:40,880 –> 00:25:43,919
با استفاده از um یک سری فیبوناچی ایجاد کنید
791
00:25:43,919 –> 00:25:46,559
مولد بنابراین من یک فیبوناچی تعریف کرده ام
792
00:25:46,559 –> 00:25:47,200
عملکرد
793
00:25:47,200 –> 00:25:49,520
به نام فیبوناچی جایی که من حداکثر را پاس می کنم
794
00:25:49,520 –> 00:25:50,799
بنابراین حداکثر اساساً این است
795
00:25:50,799 –> 00:25:54,159
حداکثر مقداری که من می خواهم
796
00:25:54,159 –> 00:25:56,159
تا جایی که من می خواهم دنباله درست باشد
797
00:25:56,159 –> 00:25:59,679
بنابراین این اساساً کدی است که خواهد شد
798
00:25:59,679 –> 00:26:02,480
به شما مقادیر بعدی را برگردانید
799
00:26:02,480 –> 00:26:04,720
دنباله فیبوناچی من
800
00:26:04,720 –> 00:26:08,720
پس بیایید این را به فیب منتقل کنیم
801
00:26:08,720 –> 00:26:10,960
و بگویید من تمام اعداد فیبوناچی را می خواهم
802
00:26:10,960 –> 00:26:12,640
تا 10
803
00:26:12,640 –> 00:26:15,840
بنابراین و من 10 را در اینجا پاس خواهم کرد
804
00:26:15,840 –> 00:26:18,400
بیایید ببینیم در مرحله بعد چه اتفاقی می افتد
805
00:26:18,400 –> 00:26:20,720
فیب
806
00:26:20,799 –> 00:26:24,799
خوب باید با 0 شروع شود سپس زمانی که ما
807
00:26:24,799 –> 00:26:27,919
این کار را دوباره انجام دهید یک می گیریم سپس صفر را انجام می دهیم
808
00:26:27,919 –> 00:26:28,640
به علاوه یک
809
00:26:28,640 –> 00:26:30,720
باید یک عدد بعدی باشد
810
00:26:30,720 –> 00:26:32,480
یک به علاوه یک که دو است
811
00:26:32,480 –> 00:26:35,360
پس باید دو به اضافه یک سه داشته باشیم
812
00:26:35,360 –> 00:26:36,720
و سپس سه به علاوه دو
813
00:26:36,720 –> 00:26:39,440
پنج و سپس 3 به علاوه 5 باید 8 باشد. اکنون 8
814
00:26:39,440 –> 00:26:40,240
به علاوه 5 است
815
00:26:40,240 –> 00:26:42,799
13 و از آنجایی که 13 بزرگتر از ماست
816
00:26:42,799 –> 00:26:44,880
برای حداکثر مقدار ما در اینجا تصویب شد
817
00:26:44,880 –> 00:26:47,440
اکنون وقتی این را امتحان می کنیم باید آن را دریافت کنیم
818
00:26:47,440 –> 00:26:49,520
همانطور که می بینید، خطای تکرار را متوقف کنید
819
00:26:49,520 –> 00:26:51,520
در این ویدیو با آن آشنا خواهیم شد
820
00:26:51,520 –> 00:26:53,520
مفهوم درک لیست
821
00:26:53,520 –> 00:26:55,919
در حال حاضر درک لیست این است که شسته و رفته است
822
00:26:55,919 –> 00:26:56,720
روش
823
00:26:56,720 –> 00:26:59,600
ایجاد یک لیست جدید بر اساس مقادیری که
824
00:26:59,600 –> 00:27:00,720
در حال حاضر در آنجا هستند
825
00:27:00,720 –> 00:27:03,120
یک لیست موجود تا بتوانید به آن فکر کنید
826
00:27:03,120 –> 00:27:04,000
پسندیدن
827
00:27:04,000 –> 00:27:06,880
ایجاد یک لیست جدید با استفاده از لیست بسیار کوتاه تر
828
00:27:06,880 –> 00:27:08,799
و نحو تمیزتر در مقایسه با
829
00:27:08,799 –> 00:27:11,440
آنچه ممکن است به طور سنتی به آن فکر کنید
830
00:27:11,440 –> 00:27:13,360
پس بیایید چند نمونه را مرور کنیم
831
00:27:13,360 –> 00:27:15,279
و از طریق آن نمونه ها خواهیم دید
832
00:27:15,279 –> 00:27:17,360
درک لیست چگونه ایجاد می کند
833
00:27:17,360 –> 00:27:18,960
ایجاد این جدید به این بسیار ساده تر
834
00:27:18,960 –> 00:27:20,720
برای ما بسیار آسان تر است
835
00:27:20,720 –> 00:27:22,880
بنابراین در اولین مثال ما خواهیم بود
836
00:27:22,880 –> 00:27:25,039
ایجاد یک لیست جدید
837
00:27:25,039 –> 00:27:27,279
که حاوی میوه هایی خواهد بود که حاوی
838
00:27:27,279 –> 00:27:28,559
حرف a در آنها
839
00:27:28,559 –> 00:27:31,919
بنابراین ما از قبل لیستی از میوه ها را نام ببرید
840
00:27:31,919 –> 00:27:33,600
همانطور که می بینید اینجا
841
00:27:33,600 –> 00:27:36,159
سیب دارد و کیوی گیلاس موز دارد
842
00:27:36,159 –> 00:27:37,039
و انبه
843
00:27:37,039 –> 00:27:39,120
اکنون می خواهیم یک لیست جدید ایجاد کنیم که
844
00:27:39,120 –> 00:27:41,039
فقط میوه هایی دارد که حرف دارند
845
00:27:41,039 –> 00:27:42,159
در داخل آنها بنابراین
846
00:27:42,159 –> 00:27:43,840
سیب یکی از آنها موز خواهد بود
847
00:27:43,840 –> 00:27:45,440
یکی از آنها باشد و
848
00:27:45,440 –> 00:27:47,279
انبه یکی از آنها خواهد بود
849
00:27:47,279 –> 00:27:48,640
به طور سنتی
850
00:27:48,640 –> 00:27:51,120
اگر به این قطعه کد نگاه کنید این است
851
00:27:51,120 –> 00:27:52,960
کاری را که ما می خواهیم انجام دهیم جز این است
852
00:27:52,960 –> 00:27:54,399
شامل چند مورد است
853
00:27:54,399 –> 00:27:57,200
خطوط اضافی، اما بله، آن را انجام می دهد
854
00:27:57,200 –> 00:27:58,159
کاری که می خواهیم انجام دهیم
855
00:27:58,159 –> 00:28:00,240
حالا اگر راهی برای انجام این کار وجود داشت چه می شد
856
00:28:00,240 –> 00:28:02,000
همان چیزی که فقط با نوشتن یک ساده
857
00:28:02,000 –> 00:28:04,240
خط کد و تا جایی که می توانید وجود دارد
858
00:28:04,240 –> 00:28:05,760
اینجا را ببین
859
00:28:05,760 –> 00:28:08,720
پس منم همینو میگیرم
860
00:28:09,200 –> 00:28:11,919
اکنون فهرست کنید این جایی است که شما نیاز دارید
861
00:28:11,919 –> 00:28:12,640
دنبال کردن
862
00:28:12,640 –> 00:28:15,360
بنابراین اکنون لیست جدید من برابر است با بنابراین من
863
00:28:15,360 –> 00:28:17,440
همانطور که می بینید یک لیست در اینجا ایجاد کنید
864
00:28:17,440 –> 00:28:19,200
اکنون در این لیست شما این خط را دارید
865
00:28:19,200 –> 00:28:20,320
این همان چیزی است که ما به آن فهرست می گوییم
866
00:28:20,320 –> 00:28:21,440
درک مطلب
867
00:28:21,440 –> 00:28:24,559
بنابراین همانطور که می بینید می گوید هر میوه برای
868
00:28:24,559 –> 00:28:27,919
هر میوه در میوه ها اگر الان هست
869
00:28:27,919 –> 00:28:29,760
چک کردن حرف یا کاراکتر
870
00:28:29,760 –> 00:28:30,640
آ
871
00:28:30,640 –> 00:28:34,000
داخل هر میوه و این هر کدام
872
00:28:34,000 –> 00:28:34,720
میوه است
873
00:28:34,720 –> 00:28:37,360
که ما در حال بررسی هر شیء در این هستیم
874
00:28:37,360 –> 00:28:38,559
لیست یک به یک
875
00:28:38,559 –> 00:28:41,440
بنابراین ابتدا در اولین تکرار هر کدام
876
00:28:41,440 –> 00:28:42,720
میوه شامل خواهد شد
877
00:28:42,720 –> 00:28:44,480
سیب رشته و سپس در بعدی
878
00:28:44,480 –> 00:28:46,399
تکرار آن حاوی موز خواهد بود
879
00:28:46,399 –> 00:28:49,120
و در هر تکراری که می رویم
880
00:28:49,120 –> 00:28:50,559
برای بررسی اینکه آیا حاوی آن است
881
00:28:50,559 –> 00:28:53,039
کاراکتر a و اگر این کار را کرد پس ما
882
00:28:53,039 –> 00:28:53,840
فروشگاه
883
00:28:53,840 –> 00:28:56,640
که هر میوه در لیست جدید به عنوان شما
884
00:28:56,640 –> 00:28:59,120
می توانم اینجا را ببینم، بنابراین اگر این خط را اجرا کنم
885
00:28:59,120 –> 00:29:00,080
می بینید
886
00:29:00,080 –> 00:29:02,559
نتیجه من همان است که من دارم
887
00:29:02,559 –> 00:29:03,679
هر چه می خواستم
888
00:29:03,679 –> 00:29:05,520
و این یک راه بسیار تمیزتر بود
889
00:29:05,520 –> 00:29:07,039
نوشتن یا
890
00:29:07,039 –> 00:29:08,880
ایجاد این لیست جدید بیایید نگاه کنیم
891
00:29:08,880 –> 00:29:10,799
چند نمونه دیگر اکنون
892
00:29:10,799 –> 00:29:12,880
بنابراین مثال بعدی من آنچه که می خواهم انجام دهم
893
00:29:12,880 –> 00:29:14,799
آیا می خواهم از طریق a تکرار کنم؟
894
00:29:14,799 –> 00:29:15,360
رشته
895
00:29:15,360 –> 00:29:17,600
بنابراین من یک رشته دارم که می تواند هر چیزی باشد
896
00:29:17,600 –> 00:29:19,279
در این مورد من از رشته ای به نام استفاده می کنم
897
00:29:19,279 –> 00:29:20,480
انسان
898
00:29:20,480 –> 00:29:22,799
بسیار خوب پس من یک رشته به نام دارم
899
00:29:22,799 –> 00:29:23,760
حقوق بشر
900
00:29:23,760 –> 00:29:25,440
اکنون می خواهم هر کاراکتر را ذخیره کنم
901
00:29:25,440 –> 00:29:27,279
این رشته به یک
902
00:29:27,279 –> 00:29:28,799
لیستی که ما آن را خط زیر خط اچ می نامیم
903
00:29:28,799 –> 00:29:31,520
حروف بنابراین اگر از حلقه for استفاده کنم این است
904
00:29:31,520 –> 00:29:32,640
چگونه این کار را انجام دهیم
905
00:29:32,640 –> 00:29:34,640
اگر من این را اجرا کنم همانطور که می بینید
906
00:29:34,640 –> 00:29:35,679
لیست شامل h
907
00:29:35,679 –> 00:29:38,720
و بعد تو a و بعد n حالا چه می شود اگر من
908
00:29:38,720 –> 00:29:40,240
می خواست همین کار را بکند اما
909
00:29:40,240 –> 00:29:43,520
با استفاده از درک لیست
910
00:29:43,520 –> 00:29:46,960
کاری که من انجام می دهم این است که بیایید ایجاد کنیم
911
00:29:46,960 –> 00:29:48,960
یک لیست در اینجا بیایید تاکید کنیم
912
00:29:48,960 –> 00:29:50,640
نامه ها
913
00:29:50,640 –> 00:29:53,840
و اوم پس همانطور که می دانیم لیست کام
914
00:29:53,840 –> 00:29:56,240
بنابراین درک لیست خواهد بود
915
00:29:56,240 –> 00:29:56,960
این یک
916
00:29:56,960 –> 00:29:58,720
بنابراین شما اساسا به یک خط نیاز دارید
917
00:29:58,720 –> 00:30:02,159
در این مورد فقط اینگونه خواهد بود
918
00:30:03,679 –> 00:30:06,720
حالا این رشته من است
919
00:30:07,120 –> 00:30:09,360
حالا بیایید ببینیم چه زمانی بررسی می کنم چه چیزی در آن است
920
00:30:09,360 –> 00:30:11,520
حروف لبه
921
00:30:11,520 –> 00:30:13,840
بیایید ببینیم که خروجی چگونه است
922
00:30:13,840 –> 00:30:15,520
می توانم ببینم که دارم
923
00:30:15,520 –> 00:30:18,000
خروجی همان چیزی است که من به آن نیاز داشتم
924
00:30:18,000 –> 00:30:18,559
هست یک
925
00:30:18,559 –> 00:30:20,080
راه بسیار تمیزتر بیایید از طریق برخی از
926
00:30:20,080 –> 00:30:22,000
نمونه های بیشتر در حال حاضر
927
00:30:22,000 –> 00:30:24,320
اکنون می توانیم درک لیست های بیشتری را انجام دهیم
928
00:30:24,320 –> 00:30:26,559
اوم ما حتی می توانیم از آن استفاده کنیم
929
00:30:26,559 –> 00:30:29,520
قبلاً یک مورد را دیدهایم که ما
930
00:30:29,520 –> 00:30:31,039
برای شخصیت a بررسی شد
931
00:30:31,039 –> 00:30:33,760
ما موردی را دیده ایم که از آن عبور کرده ایم
932
00:30:33,760 –> 00:30:34,320
جایی که ما
933
00:30:34,320 –> 00:30:36,960
ما نوعی حلقه را از طریق یک رشته انجام دادیم
934
00:30:36,960 –> 00:30:38,159
ما نیز می توانیم استفاده کنیم
935
00:30:38,159 –> 00:30:40,880
این درک در شرایط شرطی است
936
00:30:40,880 –> 00:30:42,880
بیایید به یک مثال نگاه کنیم که در آن
937
00:30:42,880 –> 00:30:45,279
ما از uh این درک با an استفاده می کنیم
938
00:30:45,279 –> 00:30:46,799
اگر بیانیه
939
00:30:46,799 –> 00:30:48,840
پس اگر من می خواستم ذخیره کنم بگو
940
00:30:48,840 –> 00:30:50,480
10 اول
941
00:30:50,480 –> 00:30:53,360
اعداد زوج بنابراین این یک است
942
00:30:53,360 –> 00:30:55,440
مثالی که من از آن استفاده خواهم کرد
943
00:30:55,440 –> 00:30:58,720
بنابراین در لیست من می خواهم اولین مورد را ذخیره کنم
944
00:30:58,720 –> 00:31:00,559
10 عدد زوج تا این یک راه باشد
945
00:31:00,559 –> 00:31:04,080
برای انجام این
946
00:31:04,080 –> 00:31:06,240
بنابراین من در محدوده 20 هستم. پس این چیست
947
00:31:06,240 –> 00:31:07,279
قرار است انجام شود
948
00:31:07,279 –> 00:31:10,480
x مقدار 1 2 3 4 را می گیرد
949
00:31:10,480 –> 00:31:12,880
و به همین ترتیب تا سال 98 یا در واقع می گیرند
950
00:31:12,880 –> 00:31:13,600
آن را از 0
951
00:31:13,600 –> 00:31:16,720
1 2 3 4 تا 19. بنابراین زمانی که ما محدوده 20 را انجام می دهیم
952
00:31:16,720 –> 00:31:17,519
ما در حال ایجاد یک
953
00:31:17,519 –> 00:31:20,559
تکرار در iterable که در آن uh
954
00:31:20,559 –> 00:31:22,640
ما می خواهیم از طریق تکرار خود حلقه بزنیم
955
00:31:22,640 –> 00:31:24,960
از طریق مقدار 0 تا 19.
956
00:31:24,960 –> 00:31:28,720
بنابراین اگر من این کار را انجام دهم و این را انجام دهم، این چیست
957
00:31:28,720 –> 00:31:30,880
بیانیه انجام می دهد اساساً بررسی می کند که آیا
958
00:31:30,880 –> 00:31:33,440
بر 2 بخش پذیر است
959
00:31:33,440 –> 00:31:36,320
پس اگر این برابر با 0 باشد که
960
00:31:36,320 –> 00:31:38,240
یعنی عدد زوج داریم
961
00:31:38,240 –> 00:31:40,320
و اگر این شرط برقرار باشد اگر این
962
00:31:40,320 –> 00:31:42,559
شرط برآورده شده است، یعنی ما ذخیره می کنیم
963
00:31:42,559 –> 00:31:45,039
x را در لیست اعداد ما قرار داده ایم پس بیایید ببینیم
964
00:31:45,039 –> 00:31:47,679
وقتی این را اجرا می کنیم چه اتفاقی می افتد
965
00:31:47,679 –> 00:31:51,039
باید حاوی uh 0 2 4 6 باشد
966
00:31:51,039 –> 00:31:53,039
تا 18 پس این اولین و زوج است
967
00:31:53,039 –> 00:31:54,559
اعداد همانطور که می بینید
968
00:31:54,559 –> 00:31:56,399
بنابراین این یک روش منظم برای استفاده از if است
969
00:31:56,399 –> 00:31:58,080
عبارت if else نیز می توانیم استفاده کنیم
970
00:31:58,080 –> 00:31:59,600
بیانیه
971
00:31:59,600 –> 00:32:03,279
پس چه می شود اگر من هر کدام را 5 تا چک کنم
972
00:32:03,279 –> 00:32:05,519
خوب پس من می خواهم لیست دیگری ایجاد کنم
973
00:32:05,519 –> 00:32:06,880
و در این لیست قرار است
974
00:32:06,880 –> 00:32:10,559
اساسا ببینید که آیا هر یک از من
975
00:32:10,559 –> 00:32:13,600
اعداد زوج یا فرد
976
00:32:13,600 –> 00:32:14,159
اولین
977
00:32:14,159 –> 00:32:16,640
10 عدد طبیعی را فرض کنید
978
00:32:16,640 –> 00:32:18,720
این بیانیه را یادداشت کنید
979
00:32:18,720 –> 00:32:23,440
بنابراین من می خواهم آن را حتی در مورد
980
00:32:23,840 –> 00:32:26,640
من که در حال بررسی من هستم
981
00:32:26,640 –> 00:32:27,600
عدد بین
982
00:32:27,600 –> 00:32:30,240
بنابراین مانند 10 عدد طبیعی اول را بگویید
983
00:32:30,240 –> 00:32:31,519
همانطور که گفتم
984
00:32:31,519 –> 00:32:34,480
بیایید بررسی کنیم که آیا اوم بر بخش پذیر است یا خیر
985
00:32:34,480 –> 00:32:36,559
2
986
00:32:36,559 –> 00:32:38,399
خوب اگر بر 2 تقسیم شود، البته اینطور است
987
00:32:38,399 –> 00:32:39,840
حتی درست می شود
988
00:32:39,840 –> 00:32:44,720
در غیر این صورت می گوییم عجیب است
989
00:32:45,519 –> 00:32:48,240
و سپس برای اولین بار من را بررسی می کنیم
990
00:32:48,240 –> 00:32:50,880
بیایید 20 مورد اول را بگوییم
991
00:32:50,880 –> 00:32:54,240
خوب پس حالا وقتی این کار را انجام دادیم اجازه دهید بررسی کنم
992
00:32:54,240 –> 00:32:56,399
اوه، ما به عنوان شما آنچه در لیست است بررسی می کنیم
993
00:32:56,399 –> 00:32:58,799
می توانید ببینید که لیست شامل حتی یا
994
00:32:58,799 –> 00:33:00,880
حتی دستور می دهد که اساسا عدد را بیان می کند
995
00:33:00,880 –> 00:33:03,120
اوه صفر حتی در آن صورت عدد یک است
996
00:33:03,120 –> 00:33:04,000
عجیب و غریب و
997
00:33:04,000 –> 00:33:06,080
شماره دو زوج است و غیره و غیره
998
00:33:06,080 –> 00:33:08,080
چهارم پس این یک است
999
00:33:08,080 –> 00:33:11,200
مثالی که در آن از لیست استفاده کردیم
1000
00:33:11,200 –> 00:33:13,919
درک با عبارات uh if else
1001
00:33:13,919 –> 00:33:15,440
بنابراین یک کار منظم دیگر که می توانیم انجام دهیم
1002
00:33:15,440 –> 00:33:17,039
با
1003
00:33:17,039 –> 00:33:19,200
درک لیست است که ما می توانیم استفاده کنیم
1004
00:33:19,200 –> 00:33:20,880
آن را همراه با توابع
1005
00:33:20,880 –> 00:33:23,039
بنابراین بیایید به این تابع در این نگاه کنیم
1006
00:33:23,039 –> 00:33:24,720
به عنوان مثال ما تابعی به نام double داریم
1007
00:33:24,720 –> 00:33:26,880
x جایی که ما این x دوبل را تعریف می کنیم
1008
00:33:26,880 –> 00:33:28,880
اوه این تابع دوگانه برای گرفتن ورودی
1009
00:33:28,880 –> 00:33:30,480
اوه برای گرفتن آرگومان x
1010
00:33:30,480 –> 00:33:33,200
و آنچه برمی گردانیم مربع است
1011
00:33:33,200 –> 00:33:34,159
بحث و جدل
1012
00:33:34,159 –> 00:33:37,200
پس بیایید از آن در آسانسورهایمان استفاده کنیم
1013
00:33:37,200 –> 00:33:38,000
این درک
1014
00:33:38,000 –> 00:33:40,880
بنابراین کاری که ما اینجا انجام می دهیم این است که هستیم
1015
00:33:40,880 –> 00:33:41,840
ما در حال بررسی هستیم
1016
00:33:41,840 –> 00:33:45,039
کاری که ما انجام می دهیم برای هر x um است
1017
00:33:45,039 –> 00:33:46,720
در محدوده 10 شرط بندی کنید، بنابراین ما آن را می گیریم
1018
00:33:46,720 –> 00:33:49,120
مقدار 0 1 2 3 تا 9
1019
00:33:49,120 –> 00:33:50,720
و ما آن را به این تابع منتقل می کنیم
1020
00:33:50,720 –> 00:33:53,360
دو برابر x و
1021
00:33:53,360 –> 00:33:54,640
مربع آنها را می گیریم
1022
00:33:54,640 –> 00:33:56,559
و ما آن را در یک در یک ذخیره می کنیم
1023
00:33:56,559 –> 00:33:58,000
لیست را همانطور که می توانید در اینجا ببینید
1024
00:33:58,000 –> 00:34:00,559
بیایید این لیست را بخوانیم uh x اجازه دهید فقط
1025
00:34:00,559 –> 00:34:01,679
با این لیست تماس بگیرید
1026
00:34:01,679 –> 00:34:04,159
آن را y می نامند، پس حالا بیایید ببینیم چه چیزی در آن است
1027
00:34:04,159 –> 00:34:04,720
y
1028
00:34:04,720 –> 00:34:08,079
و بررسی می کنیم که باید 0 1 باشد
1029
00:34:08,079 –> 00:34:11,119
4 9 و غیره پس منتظر بمانید تا بررسی کنیم
1030
00:34:11,119 –> 00:34:12,480
دوباره این مربع نه این است
1031
00:34:12,480 –> 00:34:13,199
در حقیقت
1032
00:34:13,199 –> 00:34:15,918
2 بار پس بیایید آن را به اندازه شما مربع کنیم
1033
00:34:15,918 –> 00:34:18,319
می تواند ببیند
1034
00:34:18,639 –> 00:34:22,399
بنابراین می توانید برای اولین بار 0 1 4 9 را ببینید
1035
00:34:22,399 –> 00:34:24,879
10 عدد 10 عدد طبیعی حالا چی
1036
00:34:24,879 –> 00:34:26,239
من به شما نشان دادم واضح است
1037
00:34:26,239 –> 00:34:28,960
درک لیست اما ما همچنین می توانیم انجام دهیم
1038
00:34:28,960 –> 00:34:31,040
مجموعه و درک فرهنگ لغت
1039
00:34:31,040 –> 00:34:33,119
در واقع مجموعه درک درست کار می کند
1040
00:34:33,119 –> 00:34:34,639
به همان روشی که
1041
00:34:34,639 –> 00:34:36,800
درک لیست تنها تفاوت
1042
00:34:36,800 –> 00:34:38,560
هست
1043
00:34:38,560 –> 00:34:40,320
درک مجموعه مطمئن خواهد شد که
1044
00:34:40,320 –> 00:34:42,399
هیچ تکراری وجود ندارد
1045
00:34:42,399 –> 00:34:44,320
در داخل مجموعه بنابراین نمی توانید لایک داشته باشید
1046
00:34:44,320 –> 00:34:45,679
موارد تکراری
1047
00:34:45,679 –> 00:34:47,760
که در مورد لیست می توانید
1048
00:34:47,760 –> 00:34:48,960
درک ها
1049
00:34:48,960 –> 00:34:51,760
پس بیایید به یک نگاهی بیاندازیم
1050
00:34:51,760 –> 00:34:52,480
مثال
1051
00:34:52,480 –> 00:34:54,320
بنابراین در اینجا در این مثال آنچه که ما انجام می دهیم
1052
00:34:54,320 –> 00:34:56,399
آیا ما قصد داریم بررسی کنیم
1053
00:34:56,399 –> 00:34:58,000
بنابراین ما این رشته را داریم که هستیم
1054
00:34:58,000 –> 00:35:00,240
ذخیره در متن متغیر
1055
00:35:00,240 –> 00:35:03,119
و رشته چیزی شبیه زندگی است
1056
00:35:03,119 –> 00:35:03,920
راهی پیدا می کند
1057
00:35:03,920 –> 00:35:06,079
بنابراین هر چه این است در حال حاضر آنچه که ما می رویم
1058
00:35:06,079 –> 00:35:07,839
انجام دهیم این است که ما می رویم
1059
00:35:07,839 –> 00:35:11,040
اوه در تکرار از طریق این رشته
1060
00:35:11,040 –> 00:35:12,720
شخصیت به شخصیت و ما می رویم
1061
00:35:12,720 –> 00:35:14,400
برای بررسی اینکه آیا اوه
1062
00:35:14,400 –> 00:35:15,760
وجود دارد که ما می خواهیم بررسی کنیم
1063
00:35:15,760 –> 00:35:18,160
اساساً چنین می لرزد
1064
00:35:18,160 –> 00:35:20,720
اوه ما می خواهیم ببینیم که آیا شخصیت a
1065
00:35:20,720 –> 00:35:21,359
من
1066
00:35:21,359 –> 00:35:24,000
o یا u در رشته و if وجود دارد
1067
00:35:24,000 –> 00:35:26,160
این است که ما آن را به مجموعه خود منتقل می کنیم
1068
00:35:26,160 –> 00:35:28,079
حالا اگر بگردی پیدا می کنی
1069
00:35:28,079 –> 00:35:30,079
چندتایی هست من درست میگم
1070
00:35:30,079 –> 00:35:32,960
و چندین a نیز وجود دارد بنابراین if
1071
00:35:32,960 –> 00:35:34,880
ما این کار را از طریق درک لیست انجام دادیم
1072
00:35:34,880 –> 00:35:38,000
هر بار که پیدا کردیم یک مصوت پیدا می کنیم
1073
00:35:38,000 –> 00:35:39,599
به لیست ما اضافه می شود اما از آن زمان
1074
00:35:39,599 –> 00:35:42,240
این یک مجموعه است و مجموعه ها اجازه نمی دهند
1075
00:35:42,240 –> 00:35:43,119
تکراری
1076
00:35:43,119 –> 00:35:45,599
بنابراین شما فقط یک نسخه یا یک نسخه خواهید داشت
1077
00:35:45,599 –> 00:35:46,400
خاص
1078
00:35:46,400 –> 00:35:50,079
شیء برای هر یک از مصوت ها بنابراین
1079
00:35:50,079 –> 00:35:52,880
اوه البته در حال حاضر اوه مجموعه درک است
1080
00:35:52,880 –> 00:35:54,800
با استفاده از بریس های فرفری تعریف شده است، بنابراین اجازه دهید ادامه دهیم
1081
00:35:54,800 –> 00:35:55,839
که در ذهن
1082
00:35:55,839 –> 00:35:58,000
بنابراین اکنون اگر بررسی کنم که چه چیزی در این است، خواهم کرد
1083
00:35:58,000 –> 00:35:58,880
یک e
1084
00:35:58,880 –> 00:36:01,119
من و تو با وجود اینکه چندتایی وجود دارد
1085
00:36:01,119 –> 00:36:02,720
a یا چند e یا
1086
00:36:02,720 –> 00:36:05,839
من و تو چون این مجموعه ای است که ما نداریم
1087
00:36:05,839 –> 00:36:07,760
دارای کپی های تکراری از هر کپی از
1088
00:36:07,760 –> 00:36:08,720
هرکدام از این ها
1089
00:36:08,720 –> 00:36:11,119
پس این فقط یک مثال کوچک بود
1090
00:36:11,119 –> 00:36:12,960
به شما درک مجموعه ای را نشان می دهد
1091
00:36:12,960 –> 00:36:15,440
به همین ترتیب ما می توانیم همان کار را انجام دهیم
1092
00:36:15,440 –> 00:36:17,040
این این درک
1093
00:36:17,040 –> 00:36:19,280
اوه برای لغت نامه ها و ما تماس می گیریم
1094
00:36:19,280 –> 00:36:20,560
درک فرهنگ لغت
1095
00:36:20,560 –> 00:36:22,800
تنها چیزی که باید نگرانش باشیم
1096
00:36:22,800 –> 00:36:24,000
در مورد زمانی که صحبت از فرهنگ لغت می شود
1097
00:36:24,000 –> 00:36:25,200
درک ها
1098
00:36:25,200 –> 00:36:27,440
این است که ما باید یک کلید را تعریف کنیم
1099
00:36:27,440 –> 00:36:28,560
به این می رسد
1100
00:36:28,560 –> 00:36:32,079
پس بیایید به یک مثال نگاه کنیم
1101
00:36:32,079 –> 00:36:34,160
در این چیزی که ما انجام می دهیم دوباره است
1102
00:36:34,160 –> 00:36:35,440
درک فرهنگ لغت نیز هستند
1103
00:36:35,440 –> 00:36:37,119
با استفاده از بریس های مجعد تعریف شده است
1104
00:36:37,119 –> 00:36:40,240
درست مانند مجموعه ها به جز در این مورد
1105
00:36:40,240 –> 00:36:42,160
ما یک کلید تعریف می کنیم و آن جدا می شود
1106
00:36:42,160 –> 00:36:44,320
آن را از درک مجموعه ای
1107
00:36:44,320 –> 00:36:46,240
بنابراین در این مورد آنچه ما انجام می دهیم این است
1108
00:36:46,240 –> 00:36:47,599
دارم چک میکنم
1109
00:36:47,599 –> 00:36:49,359
من لیستی از اعداد را مرور می کنم
1110
00:36:49,359 –> 00:36:51,040
از صفر تا نه درست پس چه
1111
00:36:51,040 –> 00:36:52,839
محدوده سپس تابع انجام می دهد
1112
00:36:52,839 –> 00:36:56,160
و کاری که می خواهم انجام دهم این است که می روم
1113
00:36:56,160 –> 00:36:57,359
یک کلید ایجاد کنید
1114
00:36:57,359 –> 00:37:00,800
که قرار است مانند 0 1 2 3 و
1115
00:37:00,800 –> 00:37:03,119
مقدار هر کلید یک مربع خواهد بود
1116
00:37:03,119 –> 00:37:04,720
همانطور که می توانید در اینجا ببینید
1117
00:37:04,720 –> 00:37:10,079
من انجام می دهم بار من یا فقط به
1118
00:37:10,880 –> 00:37:13,040
تا می توانید کمی واضح تر بیان کنید
1119
00:37:13,040 –> 00:37:14,800
ببینید من در حال انجام من مربع اینجا هستم
1120
00:37:14,800 –> 00:37:18,000
برای هر مقدار از 0 تا 9 بنابراین
1121
00:37:18,000 –> 00:37:20,480
چیزی که باید دریافت کنم مانند یک فرهنگ لغت است
1122
00:37:20,480 –> 00:37:21,119
جایی که
1123
00:37:21,119 –> 00:37:24,000
اولین کلید 0 و مقدار آن است
1124
00:37:24,000 –> 00:37:26,400
کلید نیز باید 0 باشد زیرا 0 است
1125
00:37:26,400 –> 00:37:28,800
مربع 0 است. سپس برای 1 آن 1 خواهد بود و
1126
00:37:28,800 –> 00:37:29,599
سپس برای 2
1127
00:37:29,599 –> 00:37:32,240
4 و سپس 3 9 4 16. پس بیایید ببینیم چیست
1128
00:37:32,240 –> 00:37:33,200
اتفاق می افتد
1129
00:37:33,200 –> 00:37:36,000
همانطور که در اینجا می بینید این همان است
1130
00:37:36,000 –> 00:37:38,240
نتیجه ای که می خواستم
1131
00:37:38,240 –> 00:37:39,920
بنابراین فقط برای خلاصه کردن، اجازه دهید از طریق آن بگذریم
1132
00:37:39,920 –> 00:37:42,240
چند نکته کلیدی که باید به خاطر بسپارید
1133
00:37:42,240 –> 00:37:43,359
می آید به
1134
00:37:43,359 –> 00:37:46,079
درک مطالب را لیست کنید، بنابراین واضح است
1135
00:37:46,079 –> 00:37:47,200
یک راه زیبا
1136
00:37:47,200 –> 00:37:50,079
uh برای تعریف و ایجاد لیست بر اساس
1137
00:37:50,079 –> 00:37:51,680
لیست های موجود
1138
00:37:51,680 –> 00:37:53,599
فشرده تر و سریعتر از حالت عادی است
1139
00:37:53,599 –> 00:37:54,960
توابع و حلقه ها
1140
00:37:54,960 –> 00:37:57,280
اما ما همچنین باید در نظر داشته باشیم که ما
1141
00:37:57,280 –> 00:37:58,079
نباید
1142
00:37:58,079 –> 00:38:00,880
مانند لیست بسیار پیچیده بنویسید
1143
00:38:00,880 –> 00:38:02,560
درک ها چون
1144
00:38:02,560 –> 00:38:04,560
ایده درک لیست این است که
1145
00:38:04,560 –> 00:38:06,000
کاربر پسند باشد
1146
00:38:06,000 –> 00:38:08,160
و همچنین مهم است که توجه داشته باشید
1147
00:38:08,160 –> 00:38:09,760
هر درک لیست
1148
00:38:09,760 –> 00:38:12,400
را می توان به شکل یک حلقه اما نوشت
1149
00:38:12,400 –> 00:38:14,160
هر حلقه را نمی توان به شکل نوشت
1150
00:38:14,160 –> 00:38:16,160
از درک فهرست و آن است
1151
00:38:16,160 –> 00:38:19,040
احتمالاً یک نکته بسیار کلیدی برای به خاطر سپردن آن است
1152
00:38:19,040 –> 00:38:21,359
بله همین است، این برای این ویدیو است
1153
00:38:21,359 –> 00:38:23,280
لیست درک مجموعه درک
1154
00:38:23,280 –> 00:38:24,800
درک فرهنگ لغت
1155
00:38:24,800 –> 00:38:27,200
امیدوارم یک چیز جدید و جدید یاد گرفته باشید
1156
00:38:27,200 –> 00:38:28,079
تکنیک یا
1157
00:38:28,079 –> 00:38:30,480
هنگامی که نوبت به ایجاد جدید می شود، ترفندی کنید
1158
00:38:30,480 –> 00:38:32,320
لیستی را در این ویدیو یاد خواهیم گرفت
1159
00:38:32,320 –> 00:38:34,560
در مورد مفهوم عبارات منظم
1160
00:38:34,560 –> 00:38:36,240
اکنون یک عبارت منظم به سادگی a است
1161
00:38:36,240 –> 00:38:38,000
دنباله ای از کاراکترها که a را تعریف می کند
1162
00:38:38,000 –> 00:38:39,040
الگوی جستجو
1163
00:38:39,040 –> 00:38:42,000
برای مثال اگر این مثال را در اینجا ببینید
1164
00:38:42,000 –> 00:38:43,680
نمادی به نام هویج را می بینید
1165
00:38:43,680 –> 00:38:44,320
به دنبال
1166
00:38:44,320 –> 00:38:47,440
p و سپس پنج دوره و سپس an
1167
00:38:47,440 –> 00:38:50,079
n و یک علامت دلار و چه این regex
1168
00:38:50,079 –> 00:38:50,960
الگو انجام می دهد
1169
00:38:50,960 –> 00:38:52,880
آیا در جستجوی هفت حرف است
1170
00:38:52,880 –> 00:38:54,480
رشته ای که با p شروع می شود
1171
00:38:54,480 –> 00:38:56,640
به n ختم می شود و دارای پنج کاراکتر است
1172
00:38:56,640 –> 00:38:58,480
بین
1173
00:38:58,480 –> 00:39:01,680
بیایید به این مثال نگاه کنیم اکنون این یک است
1174
00:39:01,680 –> 00:39:03,520
الگوی regex که به دنبال آن است
1175
00:39:03,520 –> 00:39:05,760
یک رشته پنج کاراکتری که با
1176
00:39:05,760 –> 00:39:07,920
a به s ختم می شود و سه کاراکتر دارد
1177
00:39:07,920 –> 00:39:08,880
در بین
1178
00:39:08,880 –> 00:39:10,640
حالا اگر مجبور بودیم این را با این تطبیق دهیم
1179
00:39:10,640 –> 00:39:12,320
درخت با این رشته ها به عنوان یک
1180
00:39:12,320 –> 00:39:15,440
همانطور که i یا رشته های تست اولی انجام می دهد
1181
00:39:15,440 –> 00:39:17,040
مطابقت ندارد زیرا سه حرف است
1182
00:39:17,040 –> 00:39:18,320
رشته و ما به دنبال پنج
1183
00:39:18,320 –> 00:39:19,440
رشته کاراکتر
1184
00:39:19,440 –> 00:39:20,960
دومی مطابقت دارد زیرا اینطور است
1185
00:39:20,960 –> 00:39:22,480
یک رشته پنج کاراکتری که
1186
00:39:22,480 –> 00:39:24,800
با s به پایان می رسد با a شروع می شود و دارد
1187
00:39:24,800 –> 00:39:26,240
سه شخصیت در بین
1188
00:39:26,240 –> 00:39:28,240
این مطابقت نخواهد داشت زیرا هر چه باشد
1189
00:39:28,240 –> 00:39:29,920
الگوی انجام این کار این است که آن را پیدا کند
1190
00:39:29,920 –> 00:39:30,320
اولین
1191
00:39:30,320 –> 00:39:32,720
s و متوجه می شود که آن رشته است
1192
00:39:32,720 –> 00:39:34,079
خود با الف شروع می شود
1193
00:39:34,079 –> 00:39:35,680
و میگوید خوب فقط دو تا هستند
1194
00:39:35,680 –> 00:39:37,760
شخصیت های بین این اولین s
1195
00:39:37,760 –> 00:39:40,160
و این a و فرض می شود که این
1196
00:39:40,160 –> 00:39:42,560
در واقع فقط یک رشته چهار کاراکتری است
1197
00:39:42,560 –> 00:39:45,520
در واقع دو s متوالی را شناسایی کنید
1198
00:39:45,520 –> 00:39:47,119
ما باید کار خاصی انجام دهیم
1199
00:39:47,119 –> 00:39:48,960
و کاری که باید انجام دهیم همان کاری است که ما انجام می دهیم
1200
00:39:48,960 –> 00:39:50,320
بعدا خواهید دید
1201
00:39:50,320 –> 00:39:52,079
بنابراین دوباره این همان مثال از آنجاست
1202
00:39:52,079 –> 00:39:53,520
این غیر حساس به حروف بزرگ و کوچک است
1203
00:39:53,520 –> 00:39:56,400
سرمایه a وقتی که هستیم کاملاً خوب است
1204
00:39:56,400 –> 00:39:57,280
جستجو برای این
1205
00:39:57,280 –> 00:40:00,400
و همچنین مطابقت خواهد داشت این است
1206
00:40:00,400 –> 00:40:00,960
به طور مشخص
1207
00:40:00,960 –> 00:40:03,280
دو کلمه و پنج کاراکتر نیست
1208
00:40:03,280 –> 00:40:06,400
رشته بنابراین این یک مسابقه نخواهد بود
1209
00:40:06,400 –> 00:40:08,560
حالا الگوی regex یا معمولی
1210
00:40:08,560 –> 00:40:10,400
ماژول بیان در پایتون
1211
00:40:10,400 –> 00:40:12,240
را می توان با استفاده از این عبارت وارد کرد
1212
00:40:12,240 –> 00:40:14,000
واردات مجدد
1213
00:40:14,000 –> 00:40:16,480
حالا وقتی این کار را انجام دادیم، در واقع می توانیم
1214
00:40:16,480 –> 00:40:17,200
استفاده کنید
1215
00:40:17,200 –> 00:40:19,359
ابزارها و روش های بیان منظم ما
1216
00:40:19,359 –> 00:40:20,400
انجام دادن
1217
00:40:20,400 –> 00:40:21,839
کاراکتر تشخیص الگو
1218
00:40:21,839 –> 00:40:23,680
شناخت و شناسایی مختلف
1219
00:40:23,680 –> 00:40:25,839
دنباله ای از کاراکترها در رشته های ما
1220
00:40:25,839 –> 00:40:28,720
بیایید سعی کنیم کمی بیشتر درک کنیم
1221
00:40:28,720 –> 00:40:30,560
عمق در مورد عبارات منظم در حال حاضر
1222
00:40:30,560 –> 00:40:32,560
بنابراین آنچه شما در اینجا می بینید یکی است
1223
00:40:32,560 –> 00:40:35,119
متغیری به نام الگو که ذخیره می کند
1224
00:40:35,119 –> 00:40:38,000
چیزی که شبیه یک رژکس و
1225
00:40:38,000 –> 00:40:39,920
متغیر دیگری که تست ما را ذخیره می کند
1226
00:40:39,920 –> 00:40:41,599
رشته ای به نام پرتگاه
1227
00:40:41,599 –> 00:40:43,119
اکنون کاری که می خواهیم انجام دهیم این است که ما هستیم
1228
00:40:43,119 –> 00:40:44,880
از روش تطبیق استفاده می کنیم
1229
00:40:44,880 –> 00:40:47,359
از این ماژول دوباره و ما در حال رفتن به
1230
00:40:47,359 –> 00:40:48,160
بررسی
1231
00:40:48,160 –> 00:40:51,280
چه این الگو یا هر چیزی که هستیم
1232
00:40:51,280 –> 00:40:53,280
تلاش برای جستجو با استفاده از این regex
1233
00:40:53,280 –> 00:40:55,760
در واقع با آزمون ما مطابقت دارد
1234
00:40:55,760 –> 00:40:56,400
رشته
1235
00:40:56,400 –> 00:40:58,400
و آنچه ما در تلاش برای جستجوی آن هستیم این است که آیا
1236
00:40:58,400 –> 00:41:00,480
شما اینجا را بسیار شبیه به آنچه من فقط می بینید
1237
00:41:00,480 –> 00:41:01,200
به شما نشان داد
1238
00:41:01,200 –> 00:41:02,880
یک رشته پنج کاراکتری که با
1239
00:41:02,880 –> 00:41:04,800
a و با s ختم می شود
1240
00:41:04,800 –> 00:41:07,359
بنابراین اگر رشته آزمایشی ما را ببینید واقعاً آن را مشاهده می کنید
1241
00:41:07,359 –> 00:41:08,240
یک مسابقه است
1242
00:41:08,240 –> 00:41:11,200
و وقتی از این دستور استفاده می کنیم
1243
00:41:11,200 –> 00:41:13,040
باید مطابقت کامل داشته باشد
1244
00:41:13,040 –> 00:41:15,040
بنابراین ما باید اساسا آن را باید گفت
1245
00:41:15,040 –> 00:41:17,440
آن جستجو در صورت اجرا موفقیت آمیز است
1246
00:41:17,440 –> 00:41:17,839
این
1247
00:41:17,839 –> 00:41:20,560
و این همان کاری است که اکنون اگر تغییر دهم انجام می دهد
1248
00:41:20,560 –> 00:41:21,760
رشته تست به
1249
00:41:21,760 –> 00:41:24,160
این اکنون خواهید دید که اکنون این است
1250
00:41:24,160 –> 00:41:25,200
دیگر نه
1251
00:41:25,200 –> 00:41:27,200
چیزی که ما به دنبال پنج شخصیت هستیم
1252
00:41:27,200 –> 00:41:28,720
رشته با uh a و
1253
00:41:28,720 –> 00:41:31,040
با a شروع می شود و با s و ختم می شود
1254
00:41:31,040 –> 00:41:32,319
خواهید دید که جستجو
1255
00:41:32,319 –> 00:41:35,280
همانطور که در اینجا می بینید ناموفق خواهد بود
1256
00:41:35,280 –> 00:41:37,119
حالا بیایید سعی کنیم بفهمیم
1257
00:41:37,119 –> 00:41:40,079
وقتی ما دقیقاً منظورمان چیست؟
1258
00:41:40,079 –> 00:41:41,359
از این متفاوت استفاده کنید
1259
00:41:41,359 –> 00:41:43,359
برخی از این نمادهای خاص مانند برای
1260
00:41:43,359 –> 00:41:44,800
مثلا این هویج یا این
1261
00:41:44,800 –> 00:41:46,960
نماد دلار ام، اتفاقاً اینها هستند
1262
00:41:46,960 –> 00:41:48,480
به عنوان شخصیت های متا شناخته می شود
1263
00:41:48,480 –> 00:41:50,880
و در حال حاضر ما قصد داریم به بررسی همه
1264
00:41:50,880 –> 00:41:52,319
اوه یا بیشتر آنها متفاوت است
1265
00:41:52,319 –> 00:41:55,119
کاراکترهای متا که در رنگ قرمز x استفاده می شوند
1266
00:41:55,119 –> 00:41:55,440
بنابراین
1267
00:41:55,440 –> 00:41:57,520
به بیان ساده شخصیت های متا هستند
1268
00:41:57,520 –> 00:41:59,520
به سادگی شخصیت هایی که تفسیر می شوند
1269
00:41:59,520 –> 00:42:00,560
به شکلی خاص
1270
00:42:00,560 –> 00:42:02,880
توسط موتور جستجوی regex اکنون اینجاست
1271
00:42:02,880 –> 00:42:05,359
لیست شخصیت های متا
1272
00:42:05,359 –> 00:42:07,920
بیایید آنها را یکی یکی مرور کنیم
1273
00:42:07,920 –> 00:42:08,880
براکت های مربع
1274
00:42:08,880 –> 00:42:11,040
براکت مربع به سادگی مجموعه ای از را مشخص کنید
1275
00:42:11,040 –> 00:42:12,800
شخصیت هایی که می خواهیم با آنها مطابقت داشته باشیم
1276
00:42:12,800 –> 00:42:15,599
بنابراین ما می خواهیم با ترکیبی از
1277
00:42:15,599 –> 00:42:18,079
a b و c می تواند یک و دو a سه باشد
1278
00:42:18,079 –> 00:42:18,560
لیسانس
1279
00:42:18,560 –> 00:42:20,319
چهار c ما به a نگاه نمی کنیم
1280
00:42:20,319 –> 00:42:22,079
الگوی خاص ما فقط می خواهیم بدانیم که آیا
1281
00:42:22,079 –> 00:42:22,400
آ
1282
00:42:22,400 –> 00:42:25,920
b و c به هر شکلی در رشته ما وجود دارد
1283
00:42:25,920 –> 00:42:28,400
بنابراین اگر از آن در رشته a استفاده کنیم
1284
00:42:28,400 –> 00:42:30,560
به سادگی ما یک مسابقه پیدا می کنیم زیرا
1285
00:42:30,560 –> 00:42:32,960
حرف a در اینجا ac خواهد یافت
1286
00:42:32,960 –> 00:42:34,560
دو بار بازی کنید زیرا ما یک
1287
00:42:34,560 –> 00:42:37,760
و c در اینجا در این رشته هی وجود دارد
1288
00:42:37,760 –> 00:42:38,400
جود
1289
00:42:38,400 –> 00:42:40,160
ما هیچ مسابقه ای نخواهیم داشت زیرا a b و
1290
00:42:40,160 –> 00:42:41,680
ج هیچ کدام از آنها در اینجا یافت نمی شوند
1291
00:42:41,680 –> 00:42:44,160
و در این رشته عجیب و غریب خواهیم داشت
1292
00:42:44,160 –> 00:42:45,119
در واقع یک دو
1293
00:42:45,119 –> 00:42:48,160
سه چهار و پنج مسابقه
1294
00:42:48,160 –> 00:42:49,920
بنابراین ما پنج مسابقه برای این خواهیم داشت
1295
00:42:49,920 –> 00:42:51,599
اوه این رشته بزرگتر
1296
00:42:51,599 –> 00:42:54,160
زیرا ما پنج نمونه از b or داریم
1297
00:42:54,160 –> 00:42:55,440
ج
1298
00:42:55,440 –> 00:42:58,480
حالا بیایید از re.match to استفاده کنیم
1299
00:42:58,480 –> 00:43:01,440
انجام دهید تا در واقع این را جستجو کنید
1300
00:43:01,440 –> 00:43:02,319
ببینیم آیا داریم
1301
00:43:02,319 –> 00:43:04,800
الگوهای خاص ما که
1302
00:43:04,800 –> 00:43:05,839
ما به دنبال
1303
00:43:05,839 –> 00:43:07,520
اکنون در این رشته ورودی این فقط است
1304
00:43:07,520 –> 00:43:09,920
چند نمونه رشته
1305
00:43:09,920 –> 00:43:12,000
من می خواهم این را که می خواهم آزمایش کنم
1306
00:43:12,000 –> 00:43:13,920
با الگوی من مطابقت دارد
1307
00:43:13,920 –> 00:43:17,200
که um هر یک از b و c در واقع آن است
1308
00:43:17,200 –> 00:43:18,480
در این پیدا شد، پس بیایید ببینیم چه اتفاقی می افتد
1309
00:43:18,480 –> 00:43:21,040
وقتی برای این کار از re.match استفاده می کنم
1310
00:43:21,040 –> 00:43:23,359
بنابراین این فرمت نحو است
1311
00:43:23,359 –> 00:43:25,040
به سادگی الگوی regex
1312
00:43:25,040 –> 00:43:26,720
و سپس هر رشته آزمایشی را با ویرگول بگذارید
1313
00:43:26,720 –> 00:43:28,079
ما داریم
1314
00:43:28,079 –> 00:43:31,119
پس بیایید ببینیم چه شیئی ایجاد می شود
1315
00:43:31,119 –> 00:43:32,720
وقتی سعی می کنیم این کار را انجام دهیم
1316
00:43:32,720 –> 00:43:34,640
همانطور که می بینید هیچ کدام نیست حتی اگر شما هستید
1317
00:43:34,640 –> 00:43:35,920
ممکن است تعجب کنید مانند
1318
00:43:35,920 –> 00:43:38,240
من می توانم a را در اینجا ببینم، می توانم یک c را ببینم
1319
00:43:38,240 –> 00:43:39,200
اینجا
1320
00:43:39,200 –> 00:43:42,000
re.match در واقع نتیجه را به ما می دهد
1321
00:43:42,000 –> 00:43:43,280
هیچ یک
1322
00:43:43,280 –> 00:43:47,040
حالا اگر سعی کنم آن را در این تست انجام دهم
1323
00:43:47,040 –> 00:43:48,240
رشته
1324
00:43:48,240 –> 00:43:50,240
که به جای آن کمی متفاوت است
1325
00:43:50,240 –> 00:43:52,319
فیلم تایتانیک حداقل سال 1998 بود
1326
00:43:52,319 –> 00:43:54,000
من می گویم اینجا همه فیلم تایتانیک بود
1327
00:43:54,000 –> 00:43:55,200
حداقل در سال 1998
1328
00:43:55,200 –> 00:43:58,240
حالا بیایید ببینیم که مطابقت r کار می کند یا نه
1329
00:43:58,240 –> 00:43:59,680
نه
1330
00:43:59,680 –> 00:44:02,079
همانطور که می بینید در واقع باز می گردد
1331
00:44:02,079 –> 00:44:03,920
هنگامی که من این را اجرا می کنم، آن را به ما برمی گرداند
1332
00:44:03,920 –> 00:44:04,800
شی نامیده می شود
1333
00:44:04,800 –> 00:44:08,319
دوباره شیء را با span01 در span01 مطابقت دهید
1334
00:44:08,319 –> 00:44:09,520
اساسا به ما می گوید
1335
00:44:09,520 –> 00:44:11,760
که ما یک تطابق بین
1336
00:44:11,760 –> 00:44:13,680
صفر و کاراکتر اول که هست
1337
00:44:13,680 –> 00:44:15,040
اساسا این شخصیت الف
1338
00:44:15,040 –> 00:44:16,800
همان چیزی است که پیدا کرده و هست
1339
00:44:16,800 –> 00:44:18,160
گفتن که این مسابقه واقعاً همین است
1340
00:44:18,160 –> 00:44:19,839
شخصیت الف
1341
00:44:19,839 –> 00:44:22,480
از میان این گزینه ها پس چه این
1342
00:44:22,480 –> 00:44:23,839
اساسا به ما می گوید
1343
00:44:23,839 –> 00:44:26,960
و آنچه این به معنای واقعی است این است
1344
00:44:26,960 –> 00:44:30,000
روش re.match فقط خواهد بود
1345
00:44:30,000 –> 00:44:31,760
اگر منطبقات در ابتدا رخ دهد، پیدا کنید
1346
00:44:31,760 –> 00:44:33,200
رشته مورد جستجو
1347
00:44:33,200 –> 00:44:35,839
زمانی که فضایی در بزرگتر ما وجود دارد
1348
00:44:35,839 –> 00:44:37,440
رشته آن را برای هر چیزی جستجو نمی کند
1349
00:44:37,440 –> 00:44:38,400
پس از آن می آید
1350
00:44:38,400 –> 00:44:41,200
پس در مرحله اول چه اتفاقی افتاد
1351
00:44:41,200 –> 00:44:41,520
بود
1352
00:44:41,520 –> 00:44:43,119
در واقع فقط در جستجوی آن بود
1353
00:44:43,119 –> 00:44:44,960
در این کلمه خاص مطابقت دارد
1354
00:44:44,960 –> 00:44:47,040
در بزرگترین رشته من و از زمانی که پیدا شد
1355
00:44:47,040 –> 00:44:48,800
بدون تطابق، اساساً نتیجه را به ما داد
1356
00:44:48,800 –> 00:44:49,280
هیچ یک
1357
00:44:49,280 –> 00:44:50,640
که در مورد دوم اینطور نبود
1358
00:44:50,640 –> 00:44:52,079
به عنوان مثال به این دلیل که مطابقت پیدا کرد
1359
00:44:52,079 –> 00:44:54,240
بلافاصله در حرف اول الف
1360
00:44:54,240 –> 00:44:55,839
حالا اگر بخواهیم واقعاً بررسی کنیم
1361
00:44:55,839 –> 00:44:57,760
همه چیز ما چه خواهیم بود
1362
00:44:57,760 –> 00:45:00,880
استفاده از جستجوی مجدد است
1363
00:45:00,880 –> 00:45:04,000
همانطور که در اینجا می توانید روش re.search را ببینید
1364
00:45:04,000 –> 00:45:06,480
در واقع کل رشته و را بررسی می کند
1365
00:45:06,480 –> 00:45:08,160
اوه اول ما را برمی گرداند
1366
00:45:08,160 –> 00:45:10,720
به عنوان مثال که در حال حاضر مطابقت پیدا می کند
1367
00:45:10,720 –> 00:45:11,440
اجازه بدید ببینم
1368
00:45:11,440 –> 00:45:13,200
این رشته تست در حال حاضر و ما هستیم
1369
00:45:13,200 –> 00:45:14,560
جستجو دوباره برای
1370
00:45:14,560 –> 00:45:17,119
اوه ما در حال جستجو برای b و c هر
1371
00:45:17,119 –> 00:45:18,560
هرکدام از این ها
1372
00:45:18,560 –> 00:45:19,920
در رشته آزمایشی ما، اما ما می خواهیم
1373
00:45:19,920 –> 00:45:21,920
از re.search استفاده کنید و مطابقت نداشته باشید
1374
00:45:21,920 –> 00:45:24,079
بنابراین در حال حاضر اگر شما آن را به ما برمی گرداند زمانی که من
1375
00:45:24,079 –> 00:45:25,920
این را اجرا کنید یک مسابقه را به ما برمی گرداند
1376
00:45:25,920 –> 00:45:26,800
دوباره اعتراض
1377
00:45:26,800 –> 00:45:28,560
اما این بار می گوید بازه 9
1378
00:45:28,560 –> 00:45:30,880
و 10. اکنون پانل ستون فقرات 9 و 10
1379
00:45:30,880 –> 00:45:32,960
در واقع وجود دارد در اینجا این است
1380
00:45:32,960 –> 00:45:34,480
شخصیت نهم و خود یک است
1381
00:45:34,480 –> 00:45:35,520
شخصیت دهم
1382
00:45:35,520 –> 00:45:37,040
در اینجا پس این اساساً چیست
1383
00:45:37,040 –> 00:45:38,800
به ما می گوید که شخصیت دهم است
1384
00:45:38,800 –> 00:45:40,319
جایی که ما یک مسابقه پیدا کردیم
1385
00:45:40,319 –> 00:45:42,000
که حرف a که بود
1386
00:45:42,000 –> 00:45:43,680
نمونه اول هر یک
1387
00:45:43,680 –> 00:45:46,560
یا b یا c در کل این رشته و این
1388
00:45:46,560 –> 00:45:48,560
اساساً جستجوی مجدد چگونه کار می کند
1389
00:45:48,560 –> 00:45:50,240
آن را نه تنها جستجو در آغاز
1390
00:45:50,240 –> 00:45:51,760
رشته اما کل را جستجو می کند
1391
00:45:51,760 –> 00:45:52,240
رشته
1392
00:45:52,240 –> 00:45:53,920
و اولین نمونه را به ما برگردانید
1393
00:45:53,920 –> 00:45:55,280
هر کجا پیدا کنیم
1394
00:45:55,280 –> 00:45:57,440
حالا اگر بخواهیم همه چیز را بفهمیم چه می شود
1395
00:45:57,440 –> 00:45:58,400
موارد
1396
00:45:58,400 –> 00:46:00,240
هر جا a b و c پیدا شد و نشد
1397
00:46:00,240 –> 00:46:01,440
فقط اولین نمونه
1398
00:46:01,440 –> 00:46:03,040
اما در آن صورت ما از آن استفاده خواهیم کرد
1399
00:46:03,040 –> 00:46:05,119
روش را در اینجا پیدا کنید
1400
00:46:05,119 –> 00:46:07,200
بنابراین هنگامی که ما از Find all استفاده می کنیم در واقع خواهد شد
1401
00:46:07,200 –> 00:46:08,160
ما را برگردان
1402
00:46:08,160 –> 00:46:10,640
هر موردی که یک b را پیدا کرد
1403
00:46:10,640 –> 00:46:11,359
یا ج
1404
00:46:11,359 –> 00:46:13,520
و اوه شما ممکن است به شما نگوید
1405
00:46:13,520 –> 00:46:15,040
موقعیت دقیق
1406
00:46:15,040 –> 00:46:17,280
اما آن را به شما می گوید دوست دارم پس اگر من
1407
00:46:17,280 –> 00:46:18,720
این را اجرا کنید می توانید ببینید
1408
00:46:18,720 –> 00:46:21,760
لیستی با c به ما می دهد
1409
00:46:21,760 –> 00:46:23,680
a و a و این اساساً به معنای آن است
1410
00:46:23,680 –> 00:46:25,359
به دنبال شخصیت ها بود
1411
00:46:25,359 –> 00:46:28,720
یا b یا c و یک اولین و از این رو پیدا کرد
1412
00:46:28,720 –> 00:46:29,040
این
1413
00:46:29,040 –> 00:46:31,040
برای اولین مورد لیست و سپس آن
1414
00:46:31,040 –> 00:46:32,640
یک ج و سپس دو پیدا کرد
1415
00:46:32,640 –> 00:46:35,119
موفقیت آمیز است بنابراین این دقیقاً همین است
1416
00:46:35,119 –> 00:46:36,640
در واقع چگونه یافتن همه کار می کند
1417
00:46:36,640 –> 00:46:38,079
جایی که در واقع همه موارد را پیدا خواهد کرد
1418
00:46:38,079 –> 00:46:40,560
نمونه هایی از الگوی regex ما
1419
00:46:40,560 –> 00:46:42,079
حالا که دیدی چطور مربع
1420
00:46:42,079 –> 00:46:43,599
براکت ها و نحوه کار
1421
00:46:43,599 –> 00:46:47,599
دوباره جستجو کنید و دوباره نقطه مطابقت دهید و دوباره پیدا کنید
1422
00:46:47,599 –> 00:46:48,240
همه
1423
00:46:48,240 –> 00:46:49,839
روش ها کار می کنند اکنون ما می رویم
1424
00:46:49,839 –> 00:46:51,680
از طریق تمام شخصیت های متا دیگر
1425
00:46:51,680 –> 00:46:52,960
که در بالا دیدیم
1426
00:46:52,960 –> 00:46:55,200
بنابراین دوره فعلی با هر دوره مطابقت دارد
1427
00:46:55,200 –> 00:46:56,000
تک شخصیت
1428
00:46:56,000 –> 00:46:57,280
به جز خط جدید خط جدید است
1429
00:46:57,280 –> 00:46:59,359
اساسا اسلش n یا یک استراحت در حال حاضر اگر شما
1430
00:46:59,359 –> 00:47:00,319
به این نگاه کن
1431
00:47:00,319 –> 00:47:05,200
تصویر کاری که قرار است انجام دهد این است که
1432
00:47:05,280 –> 00:47:07,599
این عبارت اساساً می گوید که اوه
1433
00:47:07,599 –> 00:47:08,720
آیا داریم
1434
00:47:08,720 –> 00:47:11,040
um دو شخصیت مانند مجموعه های دو
1435
00:47:11,040 –> 00:47:12,319
کاراکترهای رشته ما
1436
00:47:12,319 –> 00:47:14,640
بنابراین این یک رشته کاراکتری است و
1437
00:47:14,640 –> 00:47:16,319
بدیهی است یک رشته کاراکتری
1438
00:47:16,319 –> 00:47:17,839
یک رشته کاراکتر دوگانه نیست و
1439
00:47:17,839 –> 00:47:19,520
این عبارت این دو نقطه است
1440
00:47:19,520 –> 00:47:22,000
اساسا از ما می پرسد که آیا ما دو تا داریم؟
1441
00:47:22,000 –> 00:47:24,079
کاراکترهای موجود در رشته ما
1442
00:47:24,079 –> 00:47:26,640
بنابراین اگر من مجبور بودم آن را با این تطبیق دهم
1443
00:47:26,640 –> 00:47:28,480
بدیهی است که منطبق نیست زیرا a
1444
00:47:28,480 –> 00:47:29,599
یک شخصیت است
1445
00:47:29,599 –> 00:47:31,680
اگر آن را با ac بررسی کنیم مطابقت دارد
1446
00:47:31,680 –> 00:47:33,599
زیرا a و c دو کاراکتر هستند
1447
00:47:33,599 –> 00:47:35,359
a c و d نیز تنها یک مورد را به ما می دهند
1448
00:47:35,359 –> 00:47:37,200
مطابقت دهید زیرا یک ج را پیدا می کند
1449
00:47:37,200 –> 00:47:38,720
و سپس d را به صورت تکی ترک خواهد کرد
1450
00:47:38,720 –> 00:47:40,559
کاراکتر اما وقتی یک c را بررسی می کنیم
1451
00:47:40,559 –> 00:47:43,119
d و e یا این رشته به ویژه آن
1452
00:47:43,119 –> 00:47:44,640
دو مسابقه پیدا خواهد کرد زیرا
1453
00:47:44,640 –> 00:47:46,720
a و c را یکی از موارد در نظر می گیرد
1454
00:47:46,720 –> 00:47:48,240
مسابقات و d و e به عنوان یکی از
1455
00:47:48,240 –> 00:47:49,200
مسابقات
1456
00:47:49,200 –> 00:47:51,040
بنابراین در زیر اساساً کاری است که ما انجام می دهیم
1457
00:47:51,040 –> 00:47:52,240
اساسا همان چیزی که ما هستیم
1458
00:47:52,240 –> 00:47:53,680
با استفاده از جستجوی نقطه سوم
1459
00:47:53,680 –> 00:47:56,000
برای هر یک از این مثال های مختلف بنابراین
1460
00:47:56,000 –> 00:47:58,000
if i if you see when I use find all on
1461
00:47:58,000 –> 00:47:58,880
acde
1462
00:47:58,880 –> 00:48:00,400
و هنگامی که من به دنبال یک دو هستم
1463
00:48:00,400 –> 00:48:02,640
مطابقت با شخصیت شما خواهید دید که آن را
1464
00:48:02,640 –> 00:48:03,920
یک ج به من برمی گرداند
1465
00:48:03,920 –> 00:48:05,760
و d e همانطور که در اینجا می بینید و
1466
00:48:05,760 –> 00:48:07,280
به طور مشابه برای چیزی شبیه به این
1467
00:48:07,280 –> 00:48:08,960
دوباره مرا برمی گرداند
1468
00:48:08,960 –> 00:48:10,640
هر چیزی که مثل دو شخصیت آن را الگو می کند
1469
00:48:10,640 –> 00:48:12,480
متوالی پیدا می کند
1470
00:48:12,480 –> 00:48:13,920
بنابراین نماد بعدی متای بعدی است
1471
00:48:13,920 –> 00:48:15,280
شخصیت نماد هویج است که
1472
00:48:15,280 –> 00:48:16,160
قبلا دیده اید
1473
00:48:16,160 –> 00:48:17,760
سپس نماد کریک اساساً است
1474
00:48:17,760 –> 00:48:19,280
برای بررسی اینکه آیا یک رشته استفاده می شود
1475
00:48:19,280 –> 00:48:21,520
با یک شخصیت خاص شروع می شود بنابراین اگر
1476
00:48:21,520 –> 00:48:22,319
شما به این دو نگاه کنید
1477
00:48:22,319 –> 00:48:23,760
این عکس اگر شما دو تا دو
1478
00:48:23,760 –> 00:48:24,960
عباراتی که ما می خواهیم بررسی کنیم
1479
00:48:24,960 –> 00:48:25,680
اینجا
1480
00:48:25,680 –> 00:48:28,640
یکی از آنها در حال بررسی است که آیا a است یا خیر
1481
00:48:28,640 –> 00:48:30,079
ابتدای یک رشته و
1482
00:48:30,079 –> 00:48:33,200
دیگری بررسی خواهد کرد که آیا a
1483
00:48:33,200 –> 00:48:34,720
ابتدای رشته است اما هست
1484
00:48:34,720 –> 00:48:37,119
بعد از b یا نه
1485
00:48:37,119 –> 00:48:39,440
بنابراین وقتی این را بررسی می کنیم آنچه را می توانید ببینید
1486
00:48:39,440 –> 00:48:40,240
اولین است
1487
00:48:40,240 –> 00:48:42,079
رشته یک مسابقه خواهد بود زیرا تنها است
1488
00:48:42,079 –> 00:48:44,160
شخصیت a و با اینجا مطابقت دارد
1489
00:48:44,160 –> 00:48:45,200
همچنین به دلیل این
1490
00:48:45,200 –> 00:48:47,040
رشته با یک شروع می شود اما نمی شود
1491
00:48:47,040 –> 00:48:48,400
با اینجا مطابقت دهید زیرا این رشته شروع می شود
1492
00:48:48,400 –> 00:48:49,200
با ب
1493
00:48:49,200 –> 00:48:51,440
حالا اگر به این خاص نگاه کنم
1494
00:48:51,440 –> 00:48:52,559
اصطلاح
1495
00:48:52,559 –> 00:48:54,880
شما می توانید ببینید که اوم این قرار است
1496
00:48:54,880 –> 00:48:55,680
جستجو کنید
1497
00:48:55,680 –> 00:48:57,280
اگر رشته با a و is شروع شود
1498
00:48:57,280 –> 00:48:59,359
به دنبال آن b پس در این مطابقت خواهد داشت
1499
00:48:59,359 –> 00:49:00,960
مورد چون a با a و is شروع می شود
1500
00:49:00,960 –> 00:49:01,760
به دنبال آن یک ب
1501
00:49:01,760 –> 00:49:03,280
اما در این مورد هم مطابقت نخواهد داشت
1502
00:49:03,280 –> 00:49:04,880
اگرچه با a شروع می شود زیرا اینطور است
1503
00:49:04,880 –> 00:49:06,319
یک ب دنبال نمی شود
1504
00:49:06,319 –> 00:49:08,000
بنابراین در اینجا اساسا ما با استفاده از
1505
00:49:08,000 –> 00:49:09,680
ie.search تا اساساً اینها را پیدا کنید
1506
00:49:09,680 –> 00:49:11,520
الگوها
1507
00:49:11,520 –> 00:49:13,599
نماد بعدی که با آن مواجه خواهیم شد
1508
00:49:13,599 –> 00:49:15,040
نماد دلار است
1509
00:49:15,040 –> 00:49:16,720
بنابراین نماد دلار است که می توانید ببینید
1510
00:49:16,720 –> 00:49:18,559
اینجا برای بررسی اینکه آیا یک رشته به پایان می رسد استفاده می شود
1511
00:49:18,559 –> 00:49:19,680
با یک شخصیت خاص و ما
1512
00:49:19,680 –> 00:49:21,200
قبلاً دیده شده است که چگونه از این استفاده می شود
1513
00:49:21,200 –> 00:49:23,040
در یکی از اوه یکی از قبلی
1514
00:49:23,040 –> 00:49:25,200
مثالها پس این بررسی میشود
1515
00:49:25,200 –> 00:49:27,040
اساسا اگر چنین است این عبارت خواهد بود
1516
00:49:27,040 –> 00:49:28,960
بررسی کنید که آیا رشته به a ختم می شود
1517
00:49:28,960 –> 00:49:30,880
بنابراین این رشته در اصل همان است
1518
00:49:30,880 –> 00:49:32,559
شخصیت a بنابراین مطابقت خواهد داشت
1519
00:49:32,559 –> 00:49:34,640
این نیز به پایان می رسد تا آن را مطابقت
1520
00:49:34,640 –> 00:49:35,920
و این رشته خاص
1521
00:49:35,920 –> 00:49:37,599
به پایان نمی رسد بنابراین مطابقت نخواهد داشت
1522
00:49:37,599 –> 00:49:39,200
و ما قصد داریم این کار را با استفاده از re انجام دهیم
1523
00:49:39,200 –> 00:49:40,000
جستجوی نقطه ای
1524
00:49:40,000 –> 00:49:42,400
در اینجا تا همانطور که می بینید یک را پیدا می کند
1525
00:49:42,400 –> 00:49:43,359
همخوانی داشتن
1526
00:49:43,359 –> 00:49:45,200
در خود شخصیت اول اینجا در
1527
00:49:45,200 –> 00:49:46,640
در این مورد در آخرین مورد مطابقت پیدا می کند
1528
00:49:46,640 –> 00:49:47,440
شخصیت
1529
00:49:47,440 –> 00:49:49,599
اما در کابین هیچ مسابقه ای وجود ندارد بنابراین آن را
1530
00:49:49,599 –> 00:49:50,640
هیچکدام را به ما برمی گرداند
1531
00:49:50,640 –> 00:49:53,280
مثال دیگر متا است
1532
00:49:53,280 –> 00:49:53,839
شخصیت ها
1533
00:49:53,839 –> 00:49:56,400
ستاره است پس این نماد ستاره است
1534
00:49:56,400 –> 00:49:57,119
و
1535
00:49:57,119 –> 00:49:59,680
این چیزی است که اساساً از ستاره استفاده می شود
1536
00:49:59,680 –> 00:50:00,240
برای
1537
00:50:00,240 –> 00:50:02,240
بررسی اینکه آیا صفر یا بیشتر وجود دارد
1538
00:50:02,240 –> 00:50:04,240
وقوع الگو در سمت چپ
1539
00:50:04,240 –> 00:50:04,800
از آن
1540
00:50:04,800 –> 00:50:06,960
پس حالا اگر اینجا را ببینید چه می شود
1541
00:50:06,960 –> 00:50:08,240
بررسی کنید
1542
00:50:08,240 –> 00:50:12,240
آیا هر شکلی از m و a وجود دارد
1543
00:50:12,240 –> 00:50:14,400
قبل از n رخ می دهد و بسیار مهم است
1544
00:50:14,400 –> 00:50:16,079
توجه داشته باشید که
1545
00:50:16,079 –> 00:50:19,040
در این مورد n باید از a پیروی کند
1546
00:50:19,040 –> 00:50:20,640
پس بیایید به این نمونه ها و چه چیزی نگاه کنیم
1547
00:50:20,640 –> 00:50:21,200
اتفاق خواهد افتاد
1548
00:50:21,200 –> 00:50:23,760
بنابراین اگر آن را با m و n بررسی کردم این است
1549
00:50:23,760 –> 00:50:25,599
در واقع یک مسابقه زیرا
1550
00:50:25,599 –> 00:50:28,240
n با صفر وقوع m دنبال می شود
1551
00:50:28,240 –> 00:50:28,880
و الف
1552
00:50:28,880 –> 00:50:31,359
که اگر ممکن است کمی عجیب به نظر برسد
1553
00:50:31,359 –> 00:50:33,200
اما از نظر فنی حقیقت دارد
1554
00:50:33,200 –> 00:50:35,839
چون نماد ستاره چک می کند
1555
00:50:35,839 –> 00:50:36,800
برای نه
1556
00:50:36,800 –> 00:50:39,200
وجود آن را فقط بررسی نمی کند
1557
00:50:39,200 –> 00:50:40,160
بررسی می کند اگر
1558
00:50:40,160 –> 00:50:43,440
n رخ می دهد که باید بعد از an رخ دهد
1559
00:50:43,440 –> 00:50:46,480
a یا a نباید خودش در آنجا باشد
1560
00:50:46,480 –> 00:50:48,079
این رشته خاص را همانطور که می بینید
1561
00:50:48,079 –> 00:50:48,800
در اینجا n
1562
00:50:48,800 –> 00:50:50,960
بعد از m رخ می دهد و خوب است زیرا
1563
00:50:50,960 –> 00:50:52,319
الف وجود ندارد
1564
00:50:52,319 –> 00:50:54,240
حالا خواهید دید که چه زمانی کار نخواهد کرد
1565
00:50:54,240 –> 00:50:56,240
بنابراین m a و n بدیهی است که خوب است
1566
00:50:56,240 –> 00:50:59,119
m a uh m triple a n نیز خوب است زیرا
1567
00:50:59,119 –> 00:51:00,079
n به دنبال a است
1568
00:51:00,079 –> 00:51:03,440
و یک m در اینجا وجود دارد که هر چند اصلی باشد
1569
00:51:03,440 –> 00:51:05,839
منطبق نیست در حال حاضر چرا حتی اگر ما
1570
00:51:05,839 –> 00:51:06,640
m و a داشته باشید
1571
00:51:06,640 –> 00:51:08,640
و ما یک n داریم که می بینید n است
1572
00:51:08,640 –> 00:51:10,000
بلافاصله به دنبال آن یک
1573
00:51:10,000 –> 00:51:13,280
i is n بلافاصله یک i را دنبال می کند
1574
00:51:13,280 –> 00:51:15,839
یا n بلافاصله با i جلو می رود
1575
00:51:15,839 –> 00:51:16,640
و این است
1576
00:51:16,640 –> 00:51:18,880
هیچ مسابقه ای نیست زیرا ما سختگیر هستیم
1577
00:51:18,880 –> 00:51:21,359
شرط در جستجو این است که n
1578
00:51:21,359 –> 00:51:25,520
اگر a وجود داشته باشد باید در a ادامه یابد
1579
00:51:25,520 –> 00:51:27,839
دوباره در زنان مطابقت خواهد داشت زیرا n
1580
00:51:27,839 –> 00:51:29,520
به دنبال یک بیش از اینجا
1581
00:51:29,520 –> 00:51:31,119
ما فقط از id.search استفاده می کنیم
1582
00:51:31,119 –> 00:51:32,720
برای این نمونه هایی که ما
1583
00:51:32,720 –> 00:51:34,880
اینجا از نظر کد با استفاده از
1584
00:51:34,880 –> 00:51:36,240
پژوهش
1585
00:51:36,240 –> 00:51:38,319
همانطور که می بینید در اینجا بالاخره ما آن را داریم
1586
00:51:38,319 –> 00:51:39,760
متاکاراکتر بعدی
1587
00:51:39,760 –> 00:51:42,000
که نماد مثبت بله پس مثبت است
1588
00:51:42,000 –> 00:51:43,760
نماد مطابقت دارد
1589
00:51:43,760 –> 00:51:46,160
یک یا چند مورد از الگوها
1590
00:51:46,160 –> 00:51:46,960
به آن واگذار شده است
1591
00:51:46,960 –> 00:51:49,200
اکنون این بسیار شبیه چیزی است که ما دیدیم
1592
00:51:49,200 –> 00:51:51,520
زودتر از نظر ستاره
1593
00:51:51,520 –> 00:51:53,280
به جز در حال حاضر در کلید به علاوه
1594
00:51:53,280 –> 00:51:54,960
تفاوت این است که ما به دنبال یکی یا
1595
00:51:54,960 –> 00:51:56,319
وقوع بیشتر
1596
00:51:56,319 –> 00:51:58,960
به جای صفر یا بیشتر مواردی که
1597
00:51:58,960 –> 00:52:01,520
ما در مورد ستاره به دنبال آن بودیم
1598
00:52:01,520 –> 00:52:03,680
بنابراین وقتی می گوییم یک یا چند رخداد
1599
00:52:03,680 –> 00:52:04,640
اکنون
1600
00:52:04,640 –> 00:52:07,119
ما به آنچه در سمت چپ وجود دارد نیاز داریم
1601
00:52:07,119 –> 00:52:08,720
به علاوه علامت صفر
1602
00:52:08,720 –> 00:52:10,640
هیچ گونه وقوع آن مجاز نخواهد بود
1603
00:52:10,640 –> 00:52:12,400
یا باعث تطابق نخواهد شد
1604
00:52:12,400 –> 00:52:14,160
پس بیایید ببینیم که چه کار می کنیم
1605
00:52:14,160 –> 00:52:15,440
در اینجا ما قصد داریم از همان استفاده کنیم
1606
00:52:15,440 –> 00:52:17,040
بیان جز اینکه ما می خواهیم جایگزین کنیم
1607
00:52:17,040 –> 00:52:18,400
ستاره با علامت مثبت
1608
00:52:18,400 –> 00:52:19,920
بنابراین اکنون آنچه ما می خواهیم بگوییم اشکالی ندارد
1609
00:52:19,920 –> 00:52:22,400
ما به m و حداقل یک مورد نیاز داریم
1610
00:52:22,400 –> 00:52:23,680
به دنبال آن n
1611
00:52:23,680 –> 00:52:25,119
همه این شرایط باید باشد
1612
00:52:25,119 –> 00:52:27,040
اگر اولین مورد را گرفتید دوباره ملاقات کردید
1613
00:52:27,040 –> 00:52:28,160
مثال m و n
1614
00:52:28,160 –> 00:52:29,839
این بار هیچ مسابقه ای نخواهد بود زیرا
1615
00:52:29,839 –> 00:52:32,240
در اینجا هیچ اتفاقی وجود ندارد
1616
00:52:32,240 –> 00:52:34,720
برای قبل از n بنابراین آن را یک منطبق نیست m است
1617
00:52:34,720 –> 00:52:35,359
a و n
1618
00:52:35,359 –> 00:52:37,760
یک مسابقه است زیرا خوب این در این است
1619
00:52:37,760 –> 00:52:39,280
کاملا خوب است
1620
00:52:39,280 –> 00:52:41,440
m triple a و n نیز کاملاً خوب است
1621
00:52:41,440 –> 00:52:43,280
اما اگر به m a i و n نگاه کنید
1622
00:52:43,280 –> 00:52:46,640
بسیار شبیه قبل از n است
1623
00:52:46,640 –> 00:52:48,960
یک i و نه a بنابراین هیچ تطابقی وجود ندارد
1624
00:52:48,960 –> 00:52:51,359
و دوباره زنان کاملاً خوب هستند و ما
1625
00:52:51,359 –> 00:52:53,280
اساساً همان کار را از طریق اجرا کنید
1626
00:52:53,280 –> 00:52:55,119
تابع جستجو در این قطعه از
1627
00:52:55,119 –> 00:52:57,200
کد متا کاراکتر بعدی است
1628
00:52:57,200 –> 00:52:58,079
علامت سوال
1629
00:52:58,079 –> 00:53:00,640
علامت سوال با 0 یا 1 مطابقت دارد
1630
00:53:00,640 –> 00:53:02,240
وقوع الگو
1631
00:53:02,240 –> 00:53:05,520
سمت چپ آن پس بیایید ببینیم این چیست
1632
00:53:05,520 –> 00:53:06,000
میکند
1633
00:53:06,000 –> 00:53:09,200
بنابراین اکنون ما ستاره ستاره ای را دیدیم که
1634
00:53:09,200 –> 00:53:11,359
0 یا بیشتر از این الگو بود
1635
00:53:11,359 –> 00:53:12,480
سمت چپ آن
1636
00:53:12,480 –> 00:53:15,280
ما مثبت را دیدیم که یک یا چند است
1637
00:53:15,280 –> 00:53:16,720
وقوع الگو در سمت چپ
1638
00:53:16,720 –> 00:53:18,079
از آن اکنون خواهیم دید
1639
00:53:18,079 –> 00:53:20,480
علامت سوال که صفر یا یک است
1640
00:53:20,480 –> 00:53:21,359
فقط صفر
1641
00:53:21,359 –> 00:53:24,240
یا فقط یک و نه صفر یا بیشتر از یک
1642
00:53:24,240 –> 00:53:25,119
یا بیشتر که بود
1643
00:53:25,119 –> 00:53:28,160
موارد قبلی فقط صفر و یک یا یک
1644
00:53:28,160 –> 00:53:29,680
وقوع الگو در سمت چپ
1645
00:53:29,680 –> 00:53:31,440
از آن دوباره ما می خواهیم همان را ببینیم
1646
00:53:31,440 –> 00:53:32,960
بیان جز اینکه ما می خواهیم جایگزین کنیم
1647
00:53:32,960 –> 00:53:34,319
شخصیت متا با سوال
1648
00:53:34,319 –> 00:53:34,800
علامت گذاری
1649
00:53:34,800 –> 00:53:36,640
پس حالا بیایید ببینیم چه اتفاقی می افتد
1650
00:53:36,640 –> 00:53:38,400
ما مطابقت داریم بنابراین اگر اینجا را ببینید
1651
00:53:38,400 –> 00:53:41,119
m و n یک تطابق است زیرا صفر وجود دارد
1652
00:53:41,119 –> 00:53:42,160
وقوع الف
1653
00:53:42,160 –> 00:53:44,559
و یک وقوع m قبل از n تا
1654
00:53:44,559 –> 00:53:45,839
این خوبه
1655
00:53:45,839 –> 00:53:48,319
این نیز خوب است زیرا یکی وجود دارد
1656
00:53:48,319 –> 00:53:49,680
نحوه وقوع a و m
1657
00:53:49,680 –> 00:53:52,240
و سپس آن را حفظ می کند به دنبال n
1658
00:53:52,240 –> 00:53:53,920
این خوب نخواهد بود زیرا اکنون ما
1659
00:53:53,920 –> 00:53:56,240
دارای سه رخداد از a که است
1660
00:53:56,240 –> 00:53:57,359
به دنبال آن n
1661
00:53:57,359 –> 00:53:59,920
ما فقط به دنبال صفر یا یک این هستیم
1662
00:53:59,920 –> 00:54:01,680
دوباره اصلی خواهد بود بدون مسابقه برای
1663
00:54:01,680 –> 00:54:03,119
همان دلایلی که قبلاً رفته ایم
1664
00:54:03,119 –> 00:54:03,599
از طریق
1665
00:54:03,599 –> 00:54:05,359
و زنان دوباره یک مسابقه برای
1666
00:54:05,359 –> 00:54:06,720
همان دلایل
1667
00:54:06,720 –> 00:54:08,240
و ما همین موارد را خواهیم خواند
1668
00:54:08,240 –> 00:54:09,680
با استفاده از تابع جستجو در این قطعه
1669
00:54:09,680 –> 00:54:10,319
از کد
1670
00:54:10,319 –> 00:54:12,400
شخصیت متا بعدی بریس ها هستند
1671
00:54:12,400 –> 00:54:14,400
شخصیت در حال حاضر شخصیت پرانتز است
1672
00:54:14,400 –> 00:54:15,680
جالب است زیرا کاری که ما می خواهیم انجام دهیم
1673
00:54:15,680 –> 00:54:16,000
انجام دادن
1674
00:54:16,000 –> 00:54:19,119
آیا ما می خواهیم ببینیم آیا چنین چیزی وجود دارد؟
1675
00:54:19,119 –> 00:54:19,760
این هست
1676
00:54:19,760 –> 00:54:22,400
نحو معمولی برای پرانتزها و است
1677
00:54:22,400 –> 00:54:23,200
یک بریس
1678
00:54:23,200 –> 00:54:25,920
به دنبال آن مقداری عدد صحیح n عدد صحیح کاما
1679
00:54:25,920 –> 00:54:26,400
متر
1680
00:54:26,400 –> 00:54:27,920
و سپس پرانتزها را بست تا این چه باشد
1681
00:54:27,920 –> 00:54:29,440
یعنی ما به دنبال آن هستیم
1682
00:54:29,440 –> 00:54:33,280
حداقل n و حداکثر m تکرار
1683
00:54:33,280 –> 00:54:35,760
از الگوی سمت چپ بریس ها اجازه دهید
1684
00:54:35,760 –> 00:54:37,680
از طریق یک مثال ببینید
1685
00:54:37,680 –> 00:54:39,440
اگر این عبارت را می بینید ما به دنبال آن هستیم
1686
00:54:39,440 –> 00:54:40,720
برای حداقل
1687
00:54:40,720 –> 00:54:43,760
دو و حداکثر سه مورد از
1688
00:54:43,760 –> 00:54:44,160
این
1689
00:54:44,160 –> 00:54:47,200
کاراکتر a در رشته های آزمایشی ما بنابراین
1690
00:54:47,200 –> 00:54:49,119
بیایید ببینیم در مورد اول چه اتفاقی می افتد
1691
00:54:49,119 –> 00:54:50,799
ما هیچ مسابقه ای در این مورد نداریم زیرا
1692
00:54:50,799 –> 00:54:52,640
این قسمت از رشته فقط شامل
1693
00:54:52,640 –> 00:54:53,119
یکی الف
1694
00:54:53,119 –> 00:54:54,480
و حتی این قسمت از رشته فقط
1695
00:54:54,480 –> 00:54:56,240
شامل یکی از مواردی است که ما به دنبال آن هستیم
1696
00:54:56,240 –> 00:54:56,960
حداقل دو
1697
00:54:56,960 –> 00:54:59,280
و این قسمت حداکثر شامل سه خواهد بود
1698
00:54:59,280 –> 00:55:01,200
یکی مطابق با دومی مثال دوم
1699
00:55:01,200 –> 00:55:02,640
چون قسمت دوم رشته
1700
00:55:02,640 –> 00:55:03,920
در واقع شامل
1701
00:55:03,920 –> 00:55:07,280
دو تا برای یک اوه دو آه تکرار از
1702
00:55:07,280 –> 00:55:07,839
آس باهم
1703
00:55:07,839 –> 00:55:10,960
متوالی اما این اوه در پایان و
1704
00:55:10,960 –> 00:55:12,240
در مثال سوم
1705
00:55:12,240 –> 00:55:13,760
شما می توانید هر دو رشته را در واقع ببینید
1706
00:55:13,760 –> 00:55:15,839
شامل مسابقات است، بنابراین ما دو مسابقه دریافت می کنیم
1707
00:55:15,839 –> 00:55:16,400
زیرا
1708
00:55:16,400 –> 00:55:18,559
همانطور که می بینید در اینجا دو عدد در اینجا وجود دارد
1709
00:55:18,559 –> 00:55:20,400
به دنبال آن سه a در اینجا
1710
00:55:20,400 –> 00:55:21,839
حالا وقتی به این خاص نگاه می کنیم
1711
00:55:21,839 –> 00:55:24,160
رشته بیایید ببینیم چه اتفاقی می افتد
1712
00:55:24,160 –> 00:55:26,880
بنابراین چیزی که ما می خواهیم پیدا کنیم این است که این
1713
00:55:26,880 –> 00:55:28,559
اوضاع کاملاً خوب است، بنابراین ما دو تا داریم
1714
00:55:28,559 –> 00:55:29,680
وقوع الف
1715
00:55:29,680 –> 00:55:31,920
اما اکنون چهار مورد از a داریم
1716
00:55:31,920 –> 00:55:32,960
اما چه
1717
00:55:32,960 –> 00:55:34,480
موتور جستجو قرار است تشخیص دهد
1718
00:55:34,480 –> 00:55:36,559
این سه مورد اول است و قرار است ببینیم
1719
00:55:36,559 –> 00:55:38,400
بسیار خوب پس سه مورد از a وجود دارد
1720
00:55:38,400 –> 00:55:40,079
و من قبلاً مسابقه ای دارم که اینطور نیست
1721
00:55:40,079 –> 00:55:41,599
در نظر گرفتن این چهارم و a
1722
00:55:41,599 –> 00:55:42,000
جستجو کردن
1723
00:55:42,000 –> 00:55:43,440
فقط به سه مورد اول نگاه خواهد کرد
1724
00:55:43,440 –> 00:55:46,000
بگو خوب سه تا و من هست
1725
00:55:46,000 –> 00:55:48,319
مسابقه من خوب است، بنابراین دوباره دو وجود دارد
1726
00:55:48,319 –> 00:55:49,760
مسابقات در این مورد
1727
00:55:49,760 –> 00:55:51,119
دوباره از جستجو استفاده می کنیم
1728
00:55:51,119 –> 00:55:53,680
در ابتدا کار کنید و می توانید هر کدام را ببینید
1729
00:55:53,680 –> 00:55:55,200
در هر یک از موارد یک تطابق وجود دارد
1730
00:55:55,200 –> 00:55:56,880
به جز مورد اول که این است
1731
00:55:56,880 –> 00:55:57,599
مورد
1732
00:55:57,599 –> 00:56:00,079
حالا بیایید گزینه find all و را ببینیم
1733
00:56:00,079 –> 00:56:01,440
ببینید وقتی همین کار را می کنیم چه اتفاقی می افتد
1734
00:56:01,440 –> 00:56:03,040
چیز با استفاده از پیدا کردن همه
1735
00:56:03,040 –> 00:56:04,640
بنابراین وقتی از آن استفاده می کنیم، اساساً همه آن را پیدا کنید
1736
00:56:04,640 –> 00:56:06,240
هر یک از مواردی را به ما می دهد که در آن
1737
00:56:06,240 –> 00:56:07,359
مسابقه رخ داده است
1738
00:56:07,359 –> 00:56:09,920
در هر یک از این لیست ها اکنون سعی می کنیم
1739
00:56:09,920 –> 00:56:11,359
کمی بیشتر استفاده کنید
1740
00:56:11,359 –> 00:56:13,520
مثال پیچیده ای که در آن ترکیب می کنیم
1741
00:56:13,520 –> 00:56:14,880
متفاوت بگوییم
1742
00:56:14,880 –> 00:56:17,359
شخصیت های متا مختلف و ما ایجاد می کنیم
1743
00:56:17,359 –> 00:56:18,160
a
1744
00:56:18,160 –> 00:56:19,920
بیان پیچیده تر که ما
1745
00:56:19,920 –> 00:56:21,520
می خواهید در رشته های آزمایشی ما جستجو کنید
1746
00:56:21,520 –> 00:56:23,440
بنابراین اگر به این عبارت نگاه کنید چه
1747
00:56:23,440 –> 00:56:24,839
ما به دنبال است
1748
00:56:24,839 –> 00:56:28,400
0-9 اکنون یک علامت خط تیره معتبر است
1749
00:56:28,400 –> 00:56:30,559
در پایتون با استفاده از regex چرا که این
1750
00:56:30,559 –> 00:56:31,599
در اصل به آن می گوید
1751
00:56:31,599 –> 00:56:33,839
این است که به دنبال صفر و یک است
1752
00:56:33,839 –> 00:56:35,119
دو سه چهار
1753
00:56:35,119 –> 00:56:37,200
بنابراین تا 9 اساساً هر یک از اینها
1754
00:56:37,200 –> 00:56:38,160
ارقامی که شما هستید
1755
00:56:38,160 –> 00:56:40,079
به دنبال هر یک از ارقام صفر است
1756
00:56:40,079 –> 00:56:42,000
به نه و ما می رویم
1757
00:56:42,000 –> 00:56:44,799
اوه بررسی کنید که آیا حداقل دو و حداکثر
1758
00:56:44,799 –> 00:56:45,200
چهار
1759
00:56:45,200 –> 00:56:47,440
وقوع ارقام در صورت وجود آنها
1760
00:56:47,440 –> 00:56:49,280
یا در کد خاص ما نیست
1761
00:56:49,280 –> 00:56:50,720
پس بیایید ببینیم این مسابقات چیست
1762
00:56:50,720 –> 00:56:52,319
زمانی اتفاق میافتد که از آن در رشتههای آزمایشی استفاده میکنیم
1763
00:56:52,319 –> 00:56:54,000
بنابراین اگر از آن در این رشته استفاده کنید
1764
00:56:54,000 –> 00:56:55,920
شما می توانید ببینید که آن را پیدا خواهد کرد یک مسابقه این
1765
00:56:55,920 –> 00:56:57,920
اساسا این بخش خاص از
1766
00:56:57,920 –> 00:56:59,680
رشته ای که می گوید یک دو سه
1767
00:56:59,680 –> 00:57:01,920
بنابراین این سه مورد از
1768
00:57:01,920 –> 00:57:03,440
ارقام پس خوب است
1769
00:57:03,440 –> 00:57:06,079
اکنون وقتی به کل این رشته 12 نگاه می کنیم
1770
00:57:06,079 –> 00:57:06,480
و
1771
00:57:06,480 –> 00:57:08,640
هر چه این باشد شما این اراده را خواهید دید
1772
00:57:08,640 –> 00:57:10,240
بدیهی است که اینجا مطابقت پیدا نمی کند
1773
00:57:10,240 –> 00:57:12,000
نمی شود زیرا اینها شخصیت هستند
1774
00:57:12,000 –> 00:57:13,760
اما اگر به این قسمت نگاه کنید
1775
00:57:13,760 –> 00:57:15,920
منطبق بر حسب پیدا خواهد کرد
1776
00:57:15,920 –> 00:57:18,319
چهار اول و سپس هفت و سه
1777
00:57:18,319 –> 00:57:19,680
دو بعدی
1778
00:57:19,680 –> 00:57:21,119
یک و دو دوباره هیچ مسابقه ای وجود ندارد
1779
00:57:21,119 –> 00:57:22,480
زیرا فقط موارد منفرد وجود دارد
1780
00:57:22,480 –> 00:57:24,000
از ارقامی که ما به دنبال آن هستیم
1781
00:57:24,000 –> 00:57:26,160
حداقل دو و حداکثر چهار پس اگر من
1782
00:57:26,160 –> 00:57:27,760
از Find all استفاده کنید
1783
00:57:27,760 –> 00:57:29,119
شما خواهید دید که چه خواهد شد
1784
00:57:29,119 –> 00:57:31,040
برای اولین بار برگرد
1785
00:57:31,040 –> 00:57:33,359
رشته تست چه چیزی قرار است به من برگرداند
1786
00:57:33,359 –> 00:57:35,040
آیا قرار است به من یک دو و
1787
00:57:35,040 –> 00:57:36,400
سه همانطور که در اینجا می بینید
1788
00:57:36,400 –> 00:57:38,240
اما حالا اگر به این رشته تست نگاه کنید
1789
00:57:38,240 –> 00:57:39,760
قرار است من را برگرداند
1790
00:57:39,760 –> 00:57:42,640
12 3 4 5 و 6 را به من برمی گرداند
1791
00:57:42,640 –> 00:57:44,400
قرار است 3 4 1 و 2 را به من برگرداند اما
1792
00:57:44,400 –> 00:57:46,240
نه 7 زیرا ما حداقل به دنبال آن هستیم
1793
00:57:46,240 –> 00:57:46,880
2
1794
00:57:46,880 –> 00:57:48,559
و سپس 4 5 6 را به من برمی گرداند
1795
00:57:48,559 –> 00:57:50,079
و 7 به دنبال آن 8
1796
00:57:50,079 –> 00:57:51,920
و 8 همانطور که در این لیست می بینید
1797
00:57:51,920 –> 00:57:54,160
حالا اگر از بریس های فرفری استفاده کنیم، اینجاست
1798
00:57:54,160 –> 00:57:55,119
فقط یک رقم
1799
00:57:55,119 –> 00:57:57,119
این اساسا به موتور جستجو می گوید
1800
00:57:57,119 –> 00:57:58,319
که اوه ما می خواهیم
1801
00:57:58,319 –> 00:58:00,640
دقیقا خیلی از تکرارهای
1802
00:58:00,640 –> 00:58:01,680
قبل از اوه
1803
00:58:01,680 –> 00:58:04,400
هر نوع بیانی که داریم
1804
00:58:04,400 –> 00:58:04,960
بنابراین
1805
00:58:04,960 –> 00:58:07,119
وقتی این مثال را برای uh برای انجام می دهیم
1806
00:58:07,119 –> 00:58:08,160
به عنوان مثال ما اساسا
1807
00:58:08,160 –> 00:58:11,520
گفتن که ما می خواهیم uh x
1808
00:58:11,520 –> 00:58:13,599
به دنبال آن یک خط تیره و خط تیره باید
1809
00:58:13,599 –> 00:58:15,599
حداقل سه بار رخ دهد
1810
00:58:15,599 –> 00:58:17,280
در بیان خاص ما و سپس آن
1811
00:58:17,280 –> 00:58:18,960
باید دوباره با علامت x دنبال شود
1812
00:58:18,960 –> 00:58:20,240
که در این مورد مطابقت نخواهد داشت
1813
00:58:20,240 –> 00:58:22,000
زیرا فقط دو خط تیره و آن وجود دارد
1814
00:58:22,000 –> 00:58:23,359
در این مورد مطابقت خواهد داشت زیرا وجود دارد
1815
00:58:23,359 –> 00:58:24,640
دقیقا سه خط تیره هستند
1816
00:58:24,640 –> 00:58:26,480
و دوباره در این مورد مطابقت نخواهد داشت
1817
00:58:26,480 –> 00:58:29,200
مورد چون چهار خط تیره وجود دارد
1818
00:58:29,200 –> 00:58:31,200
همانطور که در اینجا می بینید هیچ کدام با an دنبال نمی شوند
1819
00:58:31,200 –> 00:58:33,760
مطابقت شی و به دنبال آن هیچ
1820
00:58:33,760 –> 00:58:36,799
در مرحله بعد به سراغ متناوب می رویم
1821
00:58:36,799 –> 00:58:38,880
شخصیت متای تناوب و به عنوان
1822
00:58:38,880 –> 00:58:40,319
کلمه نشان می دهد تناوب است
1823
00:58:40,319 –> 00:58:41,920
اساساً به دنبال جایگزینی است
1824
00:58:41,920 –> 00:58:43,040
شکل الف و ب
1825
00:58:43,040 –> 00:58:46,240
بنابراین a باید با b و uh دنبال شود
1826
00:58:46,240 –> 00:58:47,920
اساساً این الگو باید ادامه پیدا کند
1827
00:58:47,920 –> 00:58:49,920
بنابراین در رشته اول در اینجا این
1828
00:58:49,920 –> 00:58:51,119
الگو مطابقت نخواهد داشت
1829
00:58:51,119 –> 00:58:53,119
در رشته دوم اینجا اوه ما
1830
00:58:53,119 –> 00:58:54,400
یک مسابقه خواهیم داشت زیرا ما حداقل
1831
00:58:54,400 –> 00:58:56,480
a را پیدا کنید حتی اگر b وجود نداشته باشد
1832
00:58:56,480 –> 00:58:58,480
اما این است که مطابقت را در نظر بگیریم زیرا ما
1833
00:58:58,480 –> 00:58:59,920
حداقل یک را پیدا کرد
1834
00:58:59,920 –> 00:59:01,680
در اینجا ما سه مسابقه خواهیم داشت
1835
00:59:01,680 –> 00:59:03,200
زیرا ما یک b به دنبال آن داریم
1836
00:59:03,200 –> 00:59:06,000
پس از آن یک دوباره یک، بنابراین اگر ما یک
1837
00:59:06,000 –> 00:59:07,440
بیان reg برای این
1838
00:59:07,440 –> 00:59:08,960
ما اساساً این تعداد زیادی را پیدا خواهیم کرد
1839
00:59:08,960 –> 00:59:11,440
برای هر یک از این مثال ها مطابقت دارد
1840
00:59:11,440 –> 00:59:13,760
شخصیت متا بعدی گروه در حال حاضر است
1841
00:59:13,760 –> 00:59:14,880
یک پرانتز
1842
00:59:14,880 –> 00:59:17,359
اساسا برای گروه بندی زیر الگوها استفاده می شود
1843
00:59:17,359 –> 00:59:18,720
بنابراین بیایید به یک مثال نگاه کنیم
1844
00:59:18,720 –> 00:59:20,079
منظور ما را بفهمد
1845
00:59:20,079 –> 00:59:21,440
حالا اگر به این پیچیده نگاه کنید
1846
00:59:21,440 –> 00:59:23,119
بیان کنید که این به چه معناست
1847
00:59:23,119 –> 00:59:26,799
این است که من شکلی از x و z را می خواهم
1848
00:59:26,799 –> 00:59:29,119
x و z باید با هم اتفاق بیفتند اما
1849
00:59:29,119 –> 00:59:29,920
قبل از آن
1850
00:59:29,920 –> 00:59:33,040
چیزی که من می خواهم نوعی دنبال کردن است
1851
00:59:33,040 –> 00:59:33,520
ب
1852
00:59:33,520 –> 00:59:35,839
دنبال c نوعی تناوب
1853
00:59:35,839 –> 00:59:37,359
بین b و c
1854
00:59:37,359 –> 00:59:40,240
بنابراین این قسمت همانطور که در اینجا می بینید حفظ می شود
1855
00:59:40,240 –> 00:59:41,920
در یک پرانتز چون من این را می خواهم
1856
00:59:41,920 –> 00:59:42,960
شرایط کامل
1857
00:59:42,960 –> 00:59:45,839
اساساً قبل از اینکه در x پیدا کنم رخ می دهد
1858
00:59:45,839 –> 00:59:46,559
و z
1859
00:59:46,559 –> 00:59:48,640
پس بیایید ببینیم در اینجا چه اتفاقی می افتد
1860
00:59:48,640 –> 00:59:50,640
مورد اول ما مسابقه ای نداریم
1861
00:59:50,640 –> 00:59:51,359
زیرا
1862
00:59:51,359 –> 00:59:53,520
اوه این اساساً این پرانتز وجود دارد
1863
00:59:53,520 –> 00:59:55,040
شرط برآورده نمی شود
1864
00:59:55,040 –> 00:59:57,839
قبل از x و z یک فاصله یا
1865
00:59:57,839 –> 00:59:59,760
اساساً الف و ب مقدم است
1866
00:59:59,760 –> 01:00:01,839
پس از آن یک فاصله وجود دارد بنابراین اگر فاصله
1867
01:00:01,839 –> 01:00:03,200
اتفاق نیفتاد ما در واقع a
1868
01:00:03,200 –> 01:00:03,599
همخوانی داشتن
1869
01:00:03,599 –> 01:00:05,599
همانطور که در مثال بعدی در اینجا مشاهده می کنید
1870
01:00:05,599 –> 01:00:07,119
می توانید مشاهده کنید که a و b رخ می دهند
1871
01:00:07,119 –> 01:00:09,440
اساساً این شرایط اولیه است
1872
01:00:09,440 –> 01:00:11,599
پس از x و z ملاقات کرد بنابراین وجود دارد
1873
01:00:11,599 –> 01:00:13,920
یک مسابقه پس حالا برای ما خوب است اگر
1874
01:00:13,920 –> 01:00:14,799
شما به این نگاه کنید
1875
01:00:14,799 –> 01:00:17,599
کمی پیچیده تر از آنچه شما
1876
01:00:17,599 –> 01:00:18,160
می تواند ببیند
1877
01:00:18,160 –> 01:00:20,400
ما در این مورد دو مسابقه داریم
1878
01:00:20,400 –> 01:00:22,559
ابتدا در a و سپس x و z
1879
01:00:22,559 –> 01:00:26,160
و حالا c a و b داریم
1880
01:00:26,160 –> 01:00:28,799
این کاملاً خوب است زیرا ما هستیم
1881
01:00:28,799 –> 01:00:30,319
به دنبال یک ب
1882
01:00:30,319 –> 01:00:32,319
به دنبال x و z ما به دنبال آن هستیم
1883
01:00:32,319 –> 01:00:33,680
یکی از این چیزها
1884
01:00:33,680 –> 01:00:34,799
ما به دنبال نوعی از
1885
01:00:34,799 –> 01:00:36,480
تناوب از این چیزها به دنبال
1886
01:00:36,480 –> 01:00:37,280
x و z
1887
01:00:37,280 –> 01:00:39,200
و ما می توانیم آن را در اینجا دریافت کنیم
1888
01:00:39,200 –> 01:00:40,480
به دنبال x و z
1889
01:00:40,480 –> 01:00:42,880
بنابراین در این مورد دو مسابقه دریافت خواهید کرد
1890
01:00:42,880 –> 01:00:44,480
حالا بیایید مفهوم را مرور کنیم
1891
01:00:44,480 –> 01:00:45,920
اکنون که دیدید، ساختارها را گروه بندی کنید
1892
01:00:45,920 –> 01:00:47,280
بسیاری از شخصیت های متا را دیده اید
1893
01:00:47,280 –> 01:00:48,400
پرانتز کار می کند
1894
01:00:48,400 –> 01:00:50,160
بیایید به گروه بندی سازه ها نگاه کنیم
1895
01:00:50,160 –> 01:00:52,000
گروه بندی سازه ها یک regex را در می شکنند
1896
01:00:52,000 –> 01:00:52,880
پایتون به
1897
01:00:52,880 –> 01:00:54,559
زیر عبارات یا گروه ها و این
1898
01:00:54,559 –> 01:00:56,319
دو هدف را دنبال می کند، یکی گروه بندی است
1899
01:00:56,319 –> 01:00:58,079
بخشی که اساسا می گوید که یک گروه
1900
01:00:58,079 –> 01:01:00,400
یک موجود نحوی واحد را نشان می دهد
1901
01:01:00,400 –> 01:01:02,720
و هر متا کاراکتر اضافی اعمال می شود
1902
01:01:02,720 –> 01:01:04,720
به کل گروه به عنوان یک واحد
1903
01:01:04,720 –> 01:01:06,480
و سپس یک بخش گرفتن وجود دارد که
1904
01:01:06,480 –> 01:01:08,000
اساسا به ما می گوید که برخی از گروه بندی
1905
01:01:08,000 –> 01:01:09,680
ساختارها نیز بخشی از
1906
01:01:09,680 –> 01:01:11,200
رشته جستجویی که با زیر مطابقت دارد
1907
01:01:11,200 –> 01:01:12,319
بیان در گروه
1908
01:01:12,319 –> 01:01:14,079
می توانید مسابقات ضبط شده را بعداً بازیابی کنید
1909
01:01:14,079 –> 01:01:15,520
از طریق چندین مکانیسم مختلف
1910
01:01:15,520 –> 01:01:18,000
بنابراین بیایید اساساً منظورمان را بررسی کنیم
1911
01:01:18,000 –> 01:01:19,520
با این مثال در اینجا
1912
01:01:19,520 –> 01:01:21,680
بنابراین اگر این را ببینید این عبارت دارای یک است
1913
01:01:21,680 –> 01:01:22,559
علامت مثبت
1914
01:01:22,559 –> 01:01:24,799
بنابراین ما به دنبال a همانطور که می دانید هستیم
1915
01:01:24,799 –> 01:01:26,799
plus به دنبال یک یا چند مورد است
1916
01:01:26,799 –> 01:01:29,280
بنابراین این اساسا یک یا را بررسی می کند
1917
01:01:29,280 –> 01:01:30,480
وقوع بیشتر از
1918
01:01:30,480 –> 01:01:32,400
شخصیت r فقط به این دلیل که وجود ندارد
1919
01:01:32,400 –> 01:01:34,319
پرانتز مانند این مثال
1920
01:01:34,319 –> 01:01:37,040
بنابراین این بعلاوه در کنار یک r است و این است
1921
01:01:37,040 –> 01:01:37,520
قصد دارم به
1922
01:01:37,520 –> 01:01:40,559
اساساً بررسی کنید که آیا یک یا چند
1923
01:01:40,559 –> 01:01:41,680
وقوع r
1924
01:01:41,680 –> 01:01:44,880
قبل از b و a اتفاق می افتد اما اگر ما
1925
01:01:44,880 –> 01:01:45,520
در واقع قرار داده است
1926
01:01:45,520 –> 01:01:47,760
b a و r در پایان نامه والد و به دنبال آن
1927
01:01:47,760 –> 01:01:49,599
به علاوه آن را در واقع برای بررسی
1928
01:01:49,599 –> 01:01:51,280
کل نوار رشته
1929
01:01:51,280 –> 01:01:52,559
و یک یا چند مورد را بررسی می کند
1930
01:01:52,559 –> 01:01:54,640
وقوع نوار با هم
1931
01:01:54,640 –> 01:01:56,559
بنابراین اگر به این دو مثال نگاه کنید
1932
01:01:56,559 –> 01:01:57,680
وقتی از این استفاده می کنیم
1933
01:01:57,680 –> 01:02:00,079
اوه در این نمونه ها می توانید آن را ببینید
1934
01:02:00,079 –> 01:02:01,680
اینها مثل این مسابقات خوب هستند
1935
01:02:01,680 –> 01:02:02,160
خوب
1936
01:02:02,160 –> 01:02:05,440
اما اگر از این پرانتز استفاده کنم
1937
01:02:05,440 –> 01:02:06,960
در این صورت این موارد قابل قبول خواهد بود
1938
01:02:06,960 –> 01:02:09,599
مسابقات و مانند ba تریپل R نمی خواهد
1939
01:02:09,599 –> 01:02:11,520
اگر از پرانتز استفاده کنم مطابقت داشته باشد
1940
01:02:11,520 –> 01:02:14,400
همانطور که در اینجا می بینید، پس این چگونه است
1941
01:02:14,400 –> 01:02:15,599
گروه بندی سازه ها کار می کنند
1942
01:02:15,599 –> 01:02:18,240
و نحوه کار پرانتز، پس بیایید نگاه کنیم
1943
01:02:18,240 –> 01:02:19,359
در چند نمونه دیگر
1944
01:02:19,359 –> 01:02:22,880
بنابراین کاری که این کار انجام می دهد این است که f-o-o باید باشد
1945
01:02:22,880 –> 01:02:26,000
به صورت اختیاری با b-a-r دنبال می شود
1946
01:02:26,000 –> 01:02:30,079
و b-a-r باید با هم وجود داشته باشد و
1947
01:02:30,079 –> 01:02:32,000
این به این دلیل است که ما یک علامت سوال داریم
1948
01:02:32,000 –> 01:02:33,920
در اینجا این علامت علامت سوال به ما می گوید
1949
01:02:33,920 –> 01:02:35,440
که باید صفر یا یک باشد
1950
01:02:35,440 –> 01:02:36,880
ظهور
1951
01:02:36,880 –> 01:02:38,880
به طور مشابه این خاص پیچیده است
1952
01:02:38,880 –> 01:02:40,799
عبارت در حال بررسی یک یا چند است
1953
01:02:40,799 –> 01:02:42,720
اتفاقاتی که قبلاً دیدیم
1954
01:02:42,720 –> 01:02:45,039
اساساً همه این موارد دنبال می شود
1955
01:02:45,039 –> 01:02:46,480
یک امتیاز مثبت، بنابراین ما به دنبال این هستیم
1956
01:02:46,480 –> 01:02:47,599
کل دنباله
1957
01:02:47,599 –> 01:02:50,480
برای یک یا چند مورد از آن
1958
01:02:50,480 –> 01:02:52,000
به سادگی فقط به دنبال آن هستیم
1959
01:02:52,000 –> 01:02:52,960
این الگو
1960
01:02:52,960 –> 01:02:56,000
و این برای بررسی است
1961
01:02:56,000 –> 01:02:59,200
صفر یا یک وقوع c یا w زیرا
1962
01:02:59,200 –> 01:03:00,720
از وجود علامت سوال
1963
01:03:00,720 –> 01:03:01,119
برای
1964
01:03:01,119 –> 01:03:04,160
قبل از پرانتز در این
1965
01:03:04,160 –> 01:03:05,599
ویدیو ما به ادامه کار خود می رویم
1966
01:03:05,599 –> 01:03:07,920
بحث در مورد عبارات منظم
1967
01:03:07,920 –> 01:03:09,839
اکنون که اصول معمولی را می دانید
1968
01:03:09,839 –> 01:03:11,119
اصطلاحات
1969
01:03:11,119 –> 01:03:12,720
بیایید به بحث خود ادامه دهیم
1970
01:03:12,720 –> 01:03:14,160
سکانس های خاص
1971
01:03:14,160 –> 01:03:16,079
اکنون در یک ویدیوی قبلی در مورد رشته شما
1972
01:03:16,079 –> 01:03:17,280
ممکن است مواجه شده باشد
1973
01:03:17,280 –> 01:03:18,960
سکانس فرار چیست و چگونه ما
1974
01:03:18,960 –> 01:03:20,720
از کاراکتر بک اسلش برای تولید استفاده کنید
1975
01:03:20,720 –> 01:03:22,319
این سکانس های فرار
1976
01:03:22,319 –> 01:03:24,319
و یک دنباله فرار اساسا اگر است
1977
01:03:24,319 –> 01:03:25,599
به یاد می آوری
1978
01:03:25,599 –> 01:03:28,640
چیزی که ما از آن استفاده می کنیم یا یک می دهد
1979
01:03:28,640 –> 01:03:30,319
معنی خاصی برای شخصیت ها
1980
01:03:30,319 –> 01:03:31,200
که غیر از این هستند
1981
01:03:31,200 –> 01:03:33,599
معمولی یا برای حذف استفاده می شود
1982
01:03:33,599 –> 01:03:35,039
معنی خاصی که ذاتا هستند
1983
01:03:35,039 –> 01:03:36,720
در شخصیت های خاص وجود دارد
1984
01:03:36,720 –> 01:03:39,119
که ما به آن شخصیت های متا می گوییم پس بیایید
1985
01:03:39,119 –> 01:03:41,440
ببینید سکانس های خاص چیست
1986
01:03:41,440 –> 01:03:44,240
در رابطه با عبارات منظم بنابراین
1987
01:03:44,240 –> 01:03:45,599
اولین موردی که می خواهیم به آن نگاه کنیم
1988
01:03:45,599 –> 01:03:48,240
بزرگ بک اسلش a است که استفاده می شود
1989
01:03:48,240 –> 01:03:50,319
برای مطابقت اگر کاراکترهای مشخص شده در هستند
1990
01:03:50,319 –> 01:03:51,200
حال حاضر
1991
01:03:51,200 –> 01:03:53,520
در شروع یک رشته وجود دارند بنابراین
1992
01:03:53,520 –> 01:03:54,799
اگر می توانید اینجا را ببینید
1993
01:03:54,799 –> 01:03:58,079
ما در حال بررسی هستیم که آیا کلمه d
1994
01:03:58,079 –> 01:04:00,799
در این دو رشته وجود دارد بنابراین ما
1995
01:04:00,799 –> 01:04:02,559
در مورد اول یک مسابقه تمام می شود
1996
01:04:02,559 –> 01:04:04,640
در اینجا زیرا با کلمه d شروع می شود
1997
01:04:04,640 –> 01:04:06,240
اما در مورد دوم ما a دریافت نمی کنیم
1998
01:04:06,240 –> 01:04:08,160
بازی کنید و ما اینگونه خواهیم بود
1999
01:04:08,160 –> 01:04:08,720
آن را بررسی کنید
2000
01:04:08,720 –> 01:04:10,839
برای همان چیز با استفاده از find all
2001
01:04:10,839 –> 01:04:12,640
عملکرد پس اگر می بینید
2002
01:04:12,640 –> 01:04:15,440
در حالت اول به ما باز می گرداند
2003
01:04:15,440 –> 01:04:16,720
ما یک شی
2004
01:04:16,720 –> 01:04:18,880
زیرا ما d را در ابتدای پیدا می کنیم
2005
01:04:18,880 –> 01:04:20,720
رشته در مورد دوم ما
2006
01:04:20,720 –> 01:04:23,039
ما لیست خالی را دریافت کنید زیرا رشته
2007
01:04:23,039 –> 01:04:25,359
با کلمه t شروع نمی شود
2008
01:04:25,359 –> 01:04:27,359
اکنون مورد بعدی که به آن نگاه خواهیم کرد این است
2009
01:04:27,359 –> 01:04:28,640
بک اسلش ب
2010
01:04:28,640 –> 01:04:31,520
کوچک b اکنون از این برای مطابقت با if استفاده می شود
2011
01:04:31,520 –> 01:04:33,440
کاراکترهای مشخص شده در ابتدا یا
2012
01:04:33,440 –> 01:04:34,720
در پایان یک کلمه
2013
01:04:34,720 –> 01:04:37,119
بنابراین وقتی از بک اسلش کوچک b و استفاده می کنید
2014
01:04:37,119 –> 01:04:38,720
سپس شما آن را با هر چیزی پیگیری کنید
2015
01:04:38,720 –> 01:04:39,760
شما به دنبال
2016
01:04:39,760 –> 01:04:41,839
آن را به دنبال آن خاص است
2017
01:04:41,839 –> 01:04:43,440
آن شخصیت های خاص یا آن
2018
01:04:43,440 –> 01:04:44,160
الگو
2019
01:04:44,160 –> 01:04:47,200
اگر در ابتدای کلمه وجود داشته باشد
2020
01:04:47,200 –> 01:04:48,079
در یک رشته
2021
01:04:48,079 –> 01:04:49,920
بنابراین اگر به مثال اول نگاه کنید
2022
01:04:49,920 –> 01:04:51,520
با f double o شروع می شود
2023
01:04:51,520 –> 01:04:53,680
و در مثال دوم این را می بینید
2024
01:04:53,680 –> 01:04:54,799
بخشی از
2025
01:04:54,799 –> 01:04:57,760
رشته یا این کلمه در واقع نیز هست
2026
01:04:57,760 –> 01:04:59,599
با f double o شروع می شود پس همینطور هم می شود
2027
01:04:59,599 –> 01:05:00,400
همخوانی داشتن
2028
01:05:00,400 –> 01:05:02,240
با این حال در این رشته که بسیار است
2029
01:05:02,240 –> 01:05:03,440
مشابه دومی
2030
01:05:03,440 –> 01:05:06,319
ما بین a و f فاصله نداریم
2031
01:05:06,319 –> 01:05:08,240
و اساساً یک کلمه است بنابراین این کار را انجام می دهد
2032
01:05:08,240 –> 01:05:09,760
نه با f double o بلکه آن را شروع کنید
2033
01:05:09,760 –> 01:05:11,280
در واقع با afo شروع می شود
2034
01:05:11,280 –> 01:05:13,440
و همانطور که در اینجا می بینید مطابقت نخواهد داشت
2035
01:05:13,440 –> 01:05:15,359
حالا به طور مشابه اگر بخواهیم بررسی کنیم که آیا
2036
01:05:15,359 –> 01:05:17,200
چیزی در پشت یک رشته وجود دارد
2037
01:05:17,200 –> 01:05:19,440
در انتهای یک رشته آنچه را که میزنیم تایپ میکنیم
2038
01:05:19,440 –> 01:05:20,880
می خواهم ابتدا جستجو کنم
2039
01:05:20,880 –> 01:05:22,799
و سپس آن را با بک اسلش دنبال می کنیم
2040
01:05:22,799 –> 01:05:24,079
ب کوچک و
2041
01:05:24,079 –> 01:05:25,920
سپس اگر اینجا را ببینید مطابقت خواهد داشت
2042
01:05:25,920 –> 01:05:27,520
این اولین مورد آن خواهد بود
2043
01:05:27,520 –> 01:05:29,039
مطابقت در مورد دوم زیرا این
2044
01:05:29,039 –> 01:05:31,440
قسمتی از رشته با f double o به پایان می رسد
2045
01:05:31,440 –> 01:05:32,880
اما در این مورد مطابقت نخواهد داشت
2046
01:05:32,880 –> 01:05:35,039
چون خوب ما اکنون فضا را حذف می کنیم
2047
01:05:35,039 –> 01:05:36,880
این همه چیز تبدیل به یک می شود
2048
01:05:36,880 –> 01:05:38,400
رشته ای که ما به دنبال آن هستیم و آن
2049
01:05:38,400 –> 01:05:40,640
دیگر به fw ختم نمی شود
2050
01:05:40,640 –> 01:05:42,160
و این اساساً ما فقط بررسی می کنیم
2051
01:05:42,160 –> 01:05:44,160
آن را از طریق تابع find all
2052
01:05:44,160 –> 01:05:46,160
اکنون sk بعدی ویژه بعدی است
2053
01:05:46,160 –> 01:05:47,920
دنباله ای که ما به آن نگاه خواهیم کرد
2054
01:05:47,920 –> 01:05:49,680
بزرگی b است که می باشد
2055
01:05:49,680 –> 01:05:51,280
اساسا برعکس چیزی که ما فقط داریم
2056
01:05:51,280 –> 01:05:51,680
اره
2057
01:05:51,680 –> 01:05:54,000
این فقط در صورتی مطابقت دارد که مشخص شده باشد
2058
01:05:54,000 –> 01:05:55,839
شخصیت ها در ابتدا نیستند یا
2059
01:05:55,839 –> 01:05:57,200
پایان یک کلمه
2060
01:05:57,200 –> 01:05:59,920
بنابراین اگر اینجا را می بینید این در حال بررسی است که آیا f
2061
01:05:59,920 –> 01:06:01,760
double o در ابتدا نیست
2062
01:06:01,760 –> 01:06:03,760
از این رشته ها بنابراین در این مورد وجود دارد
2063
01:06:03,760 –> 01:06:04,799
بدون مسابقه خواهد بود
2064
01:06:04,799 –> 01:06:06,400
در این مورد نیز بدون تطابق خواهد بود
2065
01:06:06,400 –> 01:06:08,559
در این مورد سوم یک مسابقه وجود خواهد داشت
2066
01:06:08,559 –> 01:06:10,000
به همین ترتیب اگر بخواهیم ببینیم که آیا
2067
01:06:10,000 –> 01:06:11,599
چیزی به پایان نمی رسد
2068
01:06:11,599 –> 01:06:13,599
یک رشته خاص که ما آن را تایپ می کنیم
2069
01:06:13,599 –> 01:06:15,440
هر الگویی که دنبالش هستیم
2070
01:06:15,440 –> 01:06:18,319
به دنبال آن یک علامت بزرگ b و
2071
01:06:18,319 –> 01:06:19,920
سپس می توانیم از تابع find all استفاده کنیم
2072
01:06:19,920 –> 01:06:22,240
هر جا که چنین لیست هایی را یافتیم برای ما ایجاد کنید
2073
01:06:22,240 –> 01:06:24,960
اشیاء چنین تطابقی را در ما پیدا می کنند
2074
01:06:24,960 –> 01:06:26,480
رشته های آزمایشی خاص
2075
01:06:26,480 –> 01:06:28,400
همانطور که ما در اینجا انجام داده ایم، در مورد بعدی
2076
01:06:28,400 –> 01:06:29,839
یکی که ما قصد داریم به آن نگاه کنیم این است
2077
01:06:29,839 –> 01:06:31,280
اسلش کوچک د
2078
01:06:31,280 –> 01:06:33,280
و این با هر رقم اعشاری مطابقت دارد
2079
01:06:33,280 –> 01:06:35,520
معادل انجام یک براکت مربع است
2080
01:06:35,520 –> 01:06:38,720
0-9 همانطور که دیدید حتما دیده اید
2081
01:06:38,720 –> 01:06:40,480
قبل از آن، بنابراین اگر یک براکت مربع انجام دهیم
2082
01:06:40,480 –> 01:06:43,200
0-9 و اگر جستجو کردیم یا همه را پیدا کردیم
2083
01:06:43,200 –> 01:06:44,160
یا یک کبریت
2084
01:06:44,160 –> 01:06:46,000
آن را به دنبال هر یک از ارقام
2085
01:06:46,000 –> 01:06:47,200
بین 0 و 9
2086
01:06:47,200 –> 01:06:48,880
بنابراین کار مشابهی را می توان با استفاده از a انجام داد
2087
01:06:48,880 –> 01:06:51,119
توالی خاص بک اسلش کوچک د
2088
01:06:51,119 –> 01:06:52,480
بنابراین همانطور که می بینید سه نفر خواهند بود
2089
01:06:52,480 –> 01:06:54,079
منطبق در این مورد زیرا یک دو و
2090
01:06:54,079 –> 01:06:55,440
سه رقمی وجود دارد
2091
01:06:55,440 –> 01:06:57,680
در حالی که در این مورد برای کلمه python
2092
01:06:57,680 –> 01:06:59,280
هیچ مسابقه ای وجود نخواهد داشت
2093
01:06:59,280 –> 01:07:00,799
بنابراین اینها نمونه های خاصی هستند که در آن
2094
01:07:00,799 –> 01:07:02,559
ما همین کار را با استفاده از
2095
01:07:02,559 –> 01:07:04,079
اسلش د
2096
01:07:04,079 –> 01:07:05,599
حالا ما یکی دیگر داریم که این است
2097
01:07:05,599 –> 01:07:07,440
d سرمایه معکوس و این فقط است
2098
01:07:07,440 –> 01:07:08,640
اساسا برعکس
2099
01:07:08,640 –> 01:07:10,799
برای هر رقم غیر اعشاری مطابقت دارد
2100
01:07:10,799 –> 01:07:12,559
همچنین معادل تایپ کردن است
2101
01:07:12,559 –> 01:07:16,559
یک هویج داخل پرانتز مربع با 0-9
2102
01:07:16,559 –> 01:07:18,640
که اگر از قبلی یادتان باشد
2103
01:07:18,640 –> 01:07:20,240
ویدئو در اصل است
2104
01:07:20,240 –> 01:07:22,240
از ما می خواهد هر چیزی را که هست بررسی کنیم
2105
01:07:22,240 –> 01:07:23,280
نه
2106
01:07:23,280 –> 01:07:26,319
رقم 0 تا 9. بنابراین
2107
01:07:26,319 –> 01:07:27,599
این اساساً ما می خواهیم بررسی کنیم
2108
01:07:27,599 –> 01:07:29,280
در این دو رشته اگر وجود ندارد
2109
01:07:29,280 –> 01:07:30,240
رقم و شماره
2110
01:07:30,240 –> 01:07:33,039
ارقام غیر اعشاری بنابراین اگر شما اینجا را ببینید ما
2111
01:07:33,039 –> 01:07:33,680
اراده
2112
01:07:33,680 –> 01:07:36,640
سه منطبق a b و uh را پیدا کنید
2113
01:07:36,640 –> 01:07:37,599
دو برابر معکوس
2114
01:07:37,599 –> 01:07:40,079
کاما و در رشته دوم خواهیم کرد
2115
01:07:40,079 –> 01:07:41,359
هیچ منطبقی را پیدا نکنید زیرا
2116
01:07:41,359 –> 01:07:44,240
این کاملاً فقط ارقام بعدی است که ما داریم
2117
01:07:44,240 –> 01:07:45,680
اسلش کوچک
2118
01:07:45,680 –> 01:07:47,599
اکنون این با جایی که یک رشته در آن وجود دارد مطابقت دارد
2119
01:07:47,599 –> 01:07:49,359
هر کاراکتر فضای سفید
2120
01:07:49,359 –> 01:07:52,319
بنابراین این برابر است با انجام یک بررسی برای
2121
01:07:52,319 –> 01:07:53,119
همه اینها
2122
01:07:53,119 –> 01:07:56,240
بنابراین این مانند بک اسلش کوچک t است
2123
01:07:56,240 –> 01:07:58,240
برای فضای برگه بک اسلش کوچک بررسی کنید
2124
01:07:58,240 –> 01:08:00,799
n یک بررسی برای خط شکست و سپس است
2125
01:08:00,799 –> 01:08:01,599
اسلش ر
2126
01:08:01,599 –> 01:08:04,400
اسلش مشکی f بک اسلش b uh are are
2127
01:08:04,400 –> 01:08:05,200
خودشون
2128
01:08:05,200 –> 01:08:07,520
اوه انواع مختلف را بررسی می کند
2129
01:08:07,520 –> 01:08:08,720
شخصیت های فضای سفید
2130
01:08:08,720 –> 01:08:10,480
که فقط با نگاه کردن به آن می توانید ببینید
2131
01:08:10,480 –> 01:08:12,480
صادقانه، اما بله، بنابراین اگر شما به سادگی انجام دهید
2132
01:08:12,480 –> 01:08:13,119
بک اسلش
2133
01:08:13,119 –> 01:08:15,039
در واقع معادل آن خواهد بود
2134
01:08:15,039 –> 01:08:16,880
جستجو برای هر یک از اینها
2135
01:08:16,880 –> 01:08:18,960
فضای سفید کاراکترهای فضای سفید که
2136
01:08:18,960 –> 01:08:20,640
ما تولید می کنیم
2137
01:08:20,640 –> 01:08:22,479
بنابراین اگر شما اینجا را ببینید زمانی که ما انجام می دهیم
2138
01:08:22,479 –> 01:08:24,399
بک اسلش در این رشته است
2139
01:08:24,399 –> 01:08:26,719
شما می توانید ببینید که یک فضا وجود دارد
2140
01:08:26,719 –> 01:08:28,000
در اینجا بنابراین مطابقت خواهد داشت
2141
01:08:28,000 –> 01:08:29,439
به ما یک مسابقه می دهد زیرا آنجاست
2142
01:08:29,439 –> 01:08:31,279
یک فضای سفید است که فقط
2143
01:08:31,279 –> 01:08:32,319
فضای عادی اینجا
2144
01:08:32,319 –> 01:08:33,839
و در مثال دوم وجود ندارد
2145
01:08:33,839 –> 01:08:35,520
مطابقت دهید زیرا فضای سفید وجود ندارد
2146
01:08:35,520 –> 01:08:36,880
اینجا
2147
01:08:36,880 –> 01:08:39,600
به طور مشابه، سرمایه را در حال حاضر مانند شما کاهش دهید
2148
01:08:39,600 –> 01:08:40,399
ممکن است متوجه شده باشد
2149
01:08:40,399 –> 01:08:42,238
اساساً رشته ای را بررسی می کند که
2150
01:08:42,238 –> 01:08:44,319
در هر رشته ای مطابقت ندارد
2151
01:08:44,319 –> 01:08:46,238
هیچ کاراکتر فضای سفید وجود ندارد
2152
01:08:46,238 –> 01:08:47,679
بنابراین اساساً همان انجام دادن است
2153
01:08:47,679 –> 01:08:49,439
هویج slash t slash n بریده بریده
2154
01:08:49,439 –> 01:08:52,880
r f v را در پرانتز مربع به این صورت بریزید
2155
01:08:52,880 –> 01:08:54,560
اساساً یک راه ساده تر برای انجام است
2156
01:08:54,560 –> 01:08:56,399
اوه همین مورد با استفاده از براکت مربع
2157
01:08:56,399 –> 01:08:58,399
در نماد هویج بنابراین اگر شما
2158
01:08:58,399 –> 01:09:00,880
این عبارت بک اسلش سرمایه s را ببینید
2159
01:09:00,880 –> 01:09:02,238
حالا ما به اوه نگاه می کنیم
2160
01:09:02,238 –> 01:09:05,120
یک فاصله b پس اگر آن را دیدید در اینجا
2161
01:09:05,120 –> 01:09:07,120
برای تمام فضاهای غیرمنطبق خواهد بود
2162
01:09:07,120 –> 01:09:08,799
بنابراین برای a و b مطابقت دارد
2163
01:09:08,799 –> 01:09:10,399
ما در اینجا دو مسابقه خواهیم داشت
2164
01:09:10,399 –> 01:09:12,799
در حالی که یک رشته خالی شامل نمی شود
2165
01:09:12,799 –> 01:09:14,799
خوب حاوی هیچ رنگ غیر سفیدی نیست
2166
01:09:14,799 –> 01:09:16,719
شخصیت فضایی از یک فنر خالی
2167
01:09:16,719 –> 01:09:18,880
در اصل یک کاراکتر فضای سفید است
2168
01:09:18,880 –> 01:09:20,799
خود را پس این خواهد بود این خواهد داد
2169
01:09:20,799 –> 01:09:21,759
ما هیچ مسابقه ای نداریم
2170
01:09:21,759 –> 01:09:23,359
بنابراین سکانس ویژه بعدی که ما هستیم
2171
01:09:23,359 –> 01:09:26,080
نگاهی به بک اسلش کوچک w است
2172
01:09:26,080 –> 01:09:27,839
اوه این با هر عدد الفبایی مطابقت دارد
2173
01:09:27,839 –> 01:09:29,439
شخصیتی که معادل آن است
2174
01:09:29,439 –> 01:09:30,799
انجام a به z
2175
01:09:30,799 –> 01:09:33,279
به صورت کوچک و سپس بزرگ تا z و
2176
01:09:33,279 –> 01:09:34,080
صفر تا نه
2177
01:09:34,080 –> 01:09:36,238
فالو کنید و همچنین یک چک این زیرخط
2178
01:09:36,238 –> 01:09:37,439
براکت های مربع
2179
01:09:37,439 –> 01:09:39,040
اوم، توجه به آن نیز مهم است
2180
01:09:39,040 –> 01:09:40,399
خط زیر یک آلفا در نظر گرفته می شود
2181
01:09:40,399 –> 01:09:42,238
کاراکتر مینیمیک به همین دلیل است که ما را درج می کنیم
2182
01:09:42,238 –> 01:09:43,040
اینجاست
2183
01:09:43,040 –> 01:09:45,679
اما بله، این همان بک اسلش است
2184
01:09:45,679 –> 01:09:47,839
w کوچک که اساسا بررسی می کند
2185
01:09:47,839 –> 01:09:49,839
هر کاراکتر عددی آلفا و مطابقت دارد
2186
01:09:49,839 –> 01:09:50,960
آن را در یک رشته
2187
01:09:50,960 –> 01:09:53,198
بنابراین اگر در این مورد اول مشاهده کردید، خواهد شد
2188
01:09:53,198 –> 01:09:54,158
پیدا کردن سه مسابقه
2189
01:09:54,158 –> 01:09:57,280
در یک دو و همچنین در حرف ج
2190
01:09:57,280 –> 01:09:58,640
این بقیه حروف عددی نیستند
2191
01:09:58,640 –> 01:10:00,640
کاراکترها در حالی که در این رشته هیچ کدام
2192
01:10:00,640 –> 01:10:02,000
از این تعداد کاراکترهای الفبایی هستند بنابراین
2193
01:10:02,000 –> 01:10:03,280
هیچ مسابقه ای نخواهیم داشت
2194
01:10:03,280 –> 01:10:04,800
دوباره بسیار شبیه به نمونه های دیگر وجود دارد
2195
01:10:04,800 –> 01:10:06,640
یک سرمایه است یک سرمایه معکوس وجود دارد
2196
01:10:06,640 –> 01:10:07,920
w که هر کدام را بررسی می کند
2197
01:10:07,920 –> 01:10:09,520
کاراکتر غیر الفبایی
2198
01:10:09,520 –> 01:10:10,880
و این معادل انجام دادن است
2199
01:10:10,880 –> 01:10:12,880
هر کاری که قبلا انجام دادیم
2200
01:10:12,880 –> 01:10:15,040
در پرانتز مربع فقط با a
2201
01:10:15,040 –> 01:10:17,120
قبل از یک علامت هویج پس اگر می بینید
2202
01:10:17,120 –> 01:10:17,600
اینجا
2203
01:10:17,600 –> 01:10:19,360
ما این رشته را داریم که در آن یک
2204
01:10:19,360 –> 01:10:20,640
دسته ای از شخصیت ها
2205
01:10:20,640 –> 01:10:22,480
خوب بله فقط یکی از آنها این اوه
2206
01:10:22,480 –> 01:10:24,560
نماد درصد غیرالفبایی است
2207
01:10:24,560 –> 01:10:26,239
شخصیت، بنابراین ما یک مسابقه من را دریافت خواهیم کرد
2208
01:10:26,239 –> 01:10:26,880
اینجا
2209
01:10:26,880 –> 01:10:28,560
اما در این مورد در پایتون رشته ما
2210
01:10:28,560 –> 01:10:30,400
هیچ مسابقه ای دریافت نخواهد کرد زیرا همه آنها هستند
2211
01:10:30,400 –> 01:10:32,400
کاراکترهای الفبایی که در حال انجام است
2212
01:10:32,400 –> 01:10:33,600
همان چیزی که در اینجا با یک دسته از
2213
01:10:33,600 –> 01:10:35,120
نمونه های مختلف با استفاده از find all
2214
01:10:35,120 –> 01:10:35,760
عملکرد
2215
01:10:35,760 –> 01:10:38,320
اکنون علامت بک اسلش بزرگ z با if مطابقت دارد
2216
01:10:38,320 –> 01:10:40,320
کاراکترهای مشخص شده در پایان هستند
2217
01:10:40,320 –> 01:10:41,360
از یک رشته
2218
01:10:41,360 –> 01:10:45,440
حالا این را با بک اسلش اشتباه نگیرید
2219
01:10:45,440 –> 01:10:47,280
b کوچک به اضافه بک اسلش کوچک b
2220
01:10:47,280 –> 01:10:49,040
یک رشته را بررسی می کند و هر کدام را بررسی می کند
2221
01:10:49,040 –> 01:10:50,560
و هر کلمه در رشته
2222
01:10:50,560 –> 01:10:53,040
به صورت جداگانه و اگر چنین است بررسی می کند
2223
01:10:53,040 –> 01:10:53,679
کلمات
2224
01:10:53,679 –> 01:10:56,080
با یک چیز خاص یا یا به پایان می رسد
2225
01:10:56,080 –> 01:10:57,760
با یک چیز خاص شروع می شود اما آن
2226
01:10:57,760 –> 01:10:59,440
هر کلمه را جداگانه بررسی می کند
2227
01:10:59,440 –> 01:11:01,360
اما در این مورد حرف بزرگ z
2228
01:11:01,360 –> 01:11:03,199
فقط رشته را بررسی می کند و نه هر کدام را
2229
01:11:03,199 –> 01:11:03,679
کلمه
2230
01:11:03,679 –> 01:11:05,600
بنابراین اگر تفاوت را در اینجا مشاهده کردید
2231
01:11:05,600 –> 01:11:07,840
وقتی از بک اسلش سرمایه استفاده می کنید
2232
01:11:07,840 –> 01:11:08,880
z
2233
01:11:08,880 –> 01:11:10,960
اوم در این مثال اول مطابقت دارد
2234
01:11:10,960 –> 01:11:12,880
اما برای دو مورد بعدی مطابقت نخواهد داشت
2235
01:11:12,880 –> 01:11:15,920
اما اگر از بک اسلش استفاده کرده اید، b کوچک است
2236
01:11:15,920 –> 01:11:16,320
اینجا
2237
01:11:16,320 –> 01:11:17,840
آن را در واقع نه تنها در مطابقت دارد
2238
01:11:17,840 –> 01:11:19,520
مثال اول در اینجا اما آن را نیز خواهد کرد
2239
01:11:19,520 –> 01:11:20,239
همخوانی داشتن
2240
01:11:20,239 –> 01:11:21,760
در مثال دوم چون این کار را می کرد
2241
01:11:21,760 –> 01:11:23,280
این کلمه را به صورت جداگانه بررسی کنید و انجام خواهد شد
2242
01:11:23,280 –> 01:11:24,800
دریابید که بله یک مسابقه در اینجا وجود دارد
2243
01:11:24,800 –> 01:11:25,280
همچنین
2244
01:11:25,280 –> 01:11:26,640
بنابراین در واقع در دوم مطابقت دارد
2245
01:11:26,640 –> 01:11:28,880
به عنوان مثال در این ویدیو ما خواهیم بود
2246
01:11:28,880 –> 01:11:30,960
پوشش موضوع سریال سازی در
2247
01:11:30,960 –> 01:11:32,800
python در حال حاضر سریال سازی شی
2248
01:11:32,800 –> 01:11:35,280
زمانی که ما بخواهیم بسیار ساده بیان می شود
2249
01:11:35,280 –> 01:11:36,239
تبدیل a
2250
01:11:36,239 –> 01:11:39,280
ساختار داده یا یک نوع شی
2251
01:11:39,280 –> 01:11:42,159
و ما می خواهیم این را به a ترجمه کنیم
2252
01:11:42,159 –> 01:11:43,440
فرم که است
2253
01:11:43,440 –> 01:11:46,320
که می تواند در یک حافظه ذخیره شود
2254
01:11:46,320 –> 01:11:46,960
مانند
2255
01:11:46,960 –> 01:11:50,880
یک فایل یا بافر حافظه
2256
01:11:50,880 –> 01:11:53,760
بعداً میتوانیم این را غیرواقعی کنیم
2257
01:11:53,760 –> 01:11:54,960
فایل خاص
2258
01:11:54,960 –> 01:11:56,800
و شی اصلی را بازسازی کنید
2259
01:11:56,800 –> 01:11:58,640
از آن در حال حاضر در پایتون
2260
01:11:58,640 –> 01:12:00,719
این کار سریال سازی شی انجام می شود
2261
01:12:00,719 –> 01:12:02,480
با تبدیل حالت هر کدام انجام می شود
2262
01:12:02,480 –> 01:12:03,199
هدف – شی
2263
01:12:03,199 –> 01:12:05,520
این جریان بایت می تواند به یک رشته بایت تبدیل شود
2264
01:12:05,520 –> 01:12:07,199
بیشتر در هر فایلی مانند ذخیره می شود
2265
01:12:07,199 –> 01:12:08,960
اشیایی مانند فایل دیسک یا حافظه
2266
01:12:08,960 –> 01:12:09,840
جریان
2267
01:12:09,840 –> 01:12:12,080
از طریق سوکت نیز قابل انتقال است
2268
01:12:12,080 –> 01:12:13,679
سریال زدایی همانطور که قبلا ذکر کردم
2269
01:12:13,679 –> 01:12:15,199
فرآیند بازسازی است
2270
01:12:15,199 –> 01:12:16,640
شیء از جریان بایت
2271
01:12:16,640 –> 01:12:18,320
اکنون در پایتون به آن اشاره می کنیم
2272
01:12:18,320 –> 01:12:20,320
سریال سازی و سریال زدایی توسط
2273
01:12:20,320 –> 01:12:22,560
اصطلاحات ترشی و ترشی کردن
2274
01:12:22,560 –> 01:12:24,800
بنابراین ماژول ترشی که یک است
2275
01:12:24,800 –> 01:12:26,640
مدلی که جزئی از استاندارد است
2276
01:12:26,640 –> 01:12:28,080
کتابخانه پایتون
2277
01:12:28,080 –> 01:12:29,760
اوم توابع برای
2278
01:12:29,760 –> 01:12:32,239
سریال سازی مانند dump و the
2279
01:12:32,239 –> 01:12:33,360
تابع dumps
2280
01:12:33,360 –> 01:12:35,920
و همچنین برای d سریال سازی با بار
2281
01:12:35,920 –> 01:12:37,600
و بارها
2282
01:12:37,600 –> 01:12:40,719
فرمت داده ماژول پیکسل است
2283
01:12:40,719 –> 01:12:43,360
خاص به بسیار پایتون خاص است و
2284
01:12:43,360 –> 01:12:43,760
بنابراین
2285
01:12:43,760 –> 01:12:45,679
برنامه هایی که با پایتون نوشته نشده اند
2286
01:12:45,679 –> 01:12:48,400
ممکن است نتواند موضوع را غیراصولی کند
2287
01:12:48,400 –> 01:12:50,960
ترشی داده ها را به درستی و آن را نیز
2288
01:12:50,960 –> 01:12:51,679
در نظر گرفته شده
2289
01:12:51,679 –> 01:12:54,800
ناامن برای برداشتن داده ها از uh
2290
01:12:54,800 –> 01:12:57,280
منابع غیر معتبر بنابراین در این
2291
01:12:57,280 –> 01:12:58,800
به عنوان مثال در اینجا آنچه می خواهم انجام دهم
2292
01:12:58,800 –> 01:13:01,360
آیا ام من می روم به جایی که می خواهم ببرم
2293
01:13:01,360 –> 01:13:03,199
شی دیکشنری
2294
01:13:03,199 –> 01:13:06,159
که با dct و بایت آن نشان داده می شود
2295
01:13:06,159 –> 01:13:08,159
نمایندگی در یک فایل ذخیره می شود
2296
01:13:08,159 –> 01:13:10,320
pickled.txt نامیده می شود
2297
01:13:10,320 –> 01:13:13,679
و اوه ما همچنین آن را فعال خواهیم کرد
2298
01:13:13,679 –> 01:13:16,640
نوشتن و حالت باینری پیشگیرانه بنابراین اگر
2299
01:13:16,640 –> 01:13:18,320
ابتدا می توانید اینجا را ببینید که من آن را وارد می کنم
2300
01:13:18,320 –> 01:13:20,719
بسته ترشی و بعد دارم باز میکنم
2301
01:13:20,719 –> 01:13:23,120
فایل pickle.txt من را به صورت باینری بنویسید
2302
01:13:23,120 –> 01:13:24,080
حالت
2303
01:13:24,080 –> 01:13:26,320
سپس من این فرهنگ لغت را ایجاد می کنم و هستم
2304
01:13:26,320 –> 01:13:28,239
قرار است این فرهنگ لغت را در آن خالی کنم
2305
01:13:28,239 –> 01:13:29,920
آن فایل خاص و سپس من می روم
2306
01:13:29,920 –> 01:13:31,679
تا اساسا فایل را ببندید
2307
01:13:31,679 –> 01:13:34,239
بنابراین با اجرای این، این کار را انجام می دهد
2308
01:13:34,239 –> 01:13:36,239
اکنون مهم است که به فایل آپیکال توجه داشته باشید
2309
01:13:36,239 –> 01:13:38,000
نمی تواند انسان نیست
2310
01:13:38,000 –> 01:13:40,800
اوه فایل قابل خواندن یک کامپیوتر می تواند
2311
01:13:40,800 –> 01:13:42,159
این را درک کنید اما این است
2312
01:13:42,159 –> 01:13:44,719
برخی از آنها نمایش بایتی هر کدام است
2313
01:13:44,719 –> 01:13:46,159
شی یا نوع داده
2314
01:13:46,159 –> 01:13:49,360
انسان قابل خواندن نیست
2315
01:13:49,360 –> 01:13:51,920
در دید ساده پس این قسمت بعدی است
2316
01:13:51,920 –> 01:13:53,760
جایی که من قرار است در آن deserialize یا
2317
01:13:53,760 –> 01:13:55,120
من می روم ترشی را ترک کنم
2318
01:13:55,120 –> 01:13:58,400
file.txt بنابراین دوباره در حال وارد کردن هستم
2319
01:13:58,400 –> 01:13:59,120
ترشی
2320
01:13:59,120 –> 01:14:01,760
من این فایل را در خواندن در باز می کنم
2321
01:14:01,760 –> 01:14:02,880
ح