در این مطلب، ویدئو پایتون قسمت 13 – به دام انداختن خطا با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:25:13
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,080 –> 00:00:02,399
بنابراین به این آموزش عاقلانه در مورد به
2
00:00:02,399 –> 00:00:04,640
دام انداختن خطا در پایتون خوش آمدید، در
3
00:00:04,640 –> 00:00:05,839
اینجا چیزی است که در طول آموزش یاد خواهید گرفت،
4
00:00:05,839 –> 00:00:07,680
5
00:00:07,680 –> 00:00:09,440
بنابراین ما با نگاه کردن به یک
6
00:00:09,440 –> 00:00:11,759
مثال خطا که به اندازه کافی آسان برای ایجاد
7
00:00:11,759 –> 00:00:13,440
آن است، شروع می کنیم و سپس به نحوه انجام
8
00:00:13,440 –> 00:00:15,120
خطای اصلی به دام انداختن خطا خواهیم پرداخت. به دام انداختن در
9
00:00:15,120 –> 00:00:17,279
پایتون قبل از بررسی به دام انداختن خطای خاص،
10
00:00:17,279 –> 00:00:19,199
بنابراین به دام انداختن چیزهایی مانند تقسیم
11
00:00:19,199 –> 00:00:21,920
بر صفر یا خطاهای تایپ
12
00:00:21,920 –> 00:00:23,760
، سپس به نحوه حباب شدن خطاها
13
00:00:23,760 –> 00:00:26,320
از توابع به کد فراخوانی
14
00:00:26,320 –> 00:00:27,439
نگاه خواهیم کرد و سپس نحوه
15
00:00:27,439 –> 00:00:29,599
بازگشت پیام خطا از یک کد را بررسی خواهیم کرد. عملکردی
16
00:00:29,599 –> 00:00:31,119
که کمی سختتر از آن
17
00:00:31,119 –> 00:00:33,040
چیزی است که فکر میکنید،
18
00:00:33,040 –> 00:00:34,640
ما به این موضوع نگاه خواهیم کرد که چگونه میتوانید خطاهای خود را به گونهای مطرح کنید
19
00:00:34,640 –> 00:00:36,640
که گویی خطاهای داخلی
20
00:00:36,640 –> 00:00:39,200
کافی نیستند و چرا ممکن است این کار را انجام دهید
21
00:00:39,200 –> 00:00:40,719
و سپس برای تکمیل، ما این کار را انجام خواهیم داد.
22
00:00:40,719 –> 00:00:42,640
به موارد دیگر و بندهای پایانی نگاه کنید
23
00:00:42,640 –> 00:00:43,920
فقط برای نشان دادن هر چیزی
24
00:00:43,920 –> 00:00:45,600
25
00:00:45,600 –> 00:00:47,440
26
00:00:47,440 –> 00:00:49,440
27
00:00:49,440 –> 00:00:51,280
28
00:00:51,280 –> 00:00:53,680
29
00:00:53,680 –> 00:00:55,199
30
00:00:55,199 –> 00:00:57,199
که ممکن است k باید ظاهر شود و شما می
31
00:00:57,199 –> 00:00:58,879
توانید روی آن کلیک کنید تا فایل های
32
00:00:58,879 –> 00:01:00,879
مربوط به این آموزش را دانلود کنید، اگر ظاهر نشد،
33
00:01:00,879 –> 00:01:02,480
می توانید آنها را از سایت یوتیوب دریافت کنید
34
00:01:02,480 –> 00:01:05,280
، پیوندی در آنجا نیز وجود دارد،
35
00:01:05,280 –> 00:01:07,040
اما مثل همیشه از بودن روی
36
00:01:07,040 –> 00:01:08,799
صفحه به خصوص با این موضوع ناراحت هستم. جنگل
37
00:01:08,799 –> 00:01:10,640
پشت سر من است، بنابراین کاری که اکنون می خواهم انجام دهم این است
38
00:01:10,640 –> 00:01:12,880
که ناپدید شوم و کنترل را
39
00:01:12,880 –> 00:01:15,119
به Sven همیشه وفادار بسپارم که شما
40
00:01:15,119 –> 00:01:18,320
را در ادامه این آموزش راهنمایی می کند،
41
00:01:18,320 –> 00:01:21,360
بنابراین بیایید
42
00:01:23,200 –> 00:01:24,799
قبل از اینکه به دام انداختن خطا نگاه کنیم،
43
00:01:24,799 –> 00:01:26,320
شروع کنیم. یک خطا
44
00:01:26,320 –> 00:01:27,360
برای به دام انداختن ایجاد کنید،
45
00:01:27,360 –> 00:01:29,200
بنابراین کاری که من انجام دادم این بود که یک
46
00:01:29,200 –> 00:01:30,799
پوشه به نام error trapping و یک فایل
47
00:01:30,799 –> 00:01:32,560
به نام badcoding.py ایجاد کردم
48
00:01:32,560 –> 00:01:34,240
که به شما ایده ای از
49
00:01:34,240 –> 00:01:36,880
کیفیت برنامه ای که می خواهیم بنویسیم می
50
00:01:36,880 –> 00:01:39,200
دهد، بنابراین من قصد دارم چه کار کنم. برای انجام این کار این است که ما
51
00:01:39,200 –> 00:01:41,520
یک تابع برای
52
00:01:41,520 –> 00:01:43,040
53
00:01:43,040 –> 00:01:47,439
محاسبه متقابل یک عدد ایجاد می کنیم
54
00:01:47,439 –> 00:01:50,479
و من آن را متقابل می نامم
55
00:01:50,479 –> 00:01:52,560
و یک عدد را می گیرد
56
00:01:52,560 –> 00:01:54,240
و فرض کنید می توانیم هر عدد ممیز
57
00:01:54,240 –> 00:01:55,840
58
00:01:55,840 –> 00:01:57,840
59
00:01:57,840 –> 00:02:01,119
شناور داشته باشیم و شناور دیگری را بیرون می اندازد. امید
60
00:02:01,119 –> 00:02:02,799
و سپس در تابع w این
61
00:02:02,799 –> 00:02:05,759
کار این است که یک تقسیم بر
62
00:02:05,759 –> 00:02:07,600
عدد را برمی گرداند و هر برنامه نویسی باید
63
00:02:07,600 –> 00:02:09,840
فوراً شروع
64
00:02:09,840 –> 00:02:11,360
65
00:02:11,360 –> 00:02:13,120
66
00:02:13,120 –> 00:02:14,800
67
00:02:14,800 –> 00:02:16,800
68
00:02:16,800 –> 00:02:18,879
به دیدن کند. اگر من متقابل مثلاً 10 را چاپ کنم کار می کند
69
00:02:18,879 –> 00:02:20,720
70
00:02:20,720 –> 00:02:23,120
که باید 0.1 به من بدهد
71
00:02:23,120 –> 00:02:24,800
زیرا این یک روی
72
00:02:24,800 –> 00:02:27,599
آن است و 0.1 انجام می دهد بنابراین عالی
73
00:02:27,599 –> 00:02:29,920
74
00:02:29,920 –> 00:02:31,200
75
00:02:31,200 –> 00:02:32,640
76
00:02:32,640 –> 00:02:34,840
77
00:02:34,840 –> 00:02:37,120
است. انواع مختلفی از خطاهای
78
00:02:37,120 –> 00:02:40,640
ایجاد شده توسط پایتون و آن یکی
79
00:02:40,640 –> 00:02:43,200
بیایید به دیگری نگاه کنیم بیایید سعی کنیم
80
00:02:43,200 –> 00:02:45,920
چیزبرگر را به عنوان ورودی در نظر بگیریم
81
00:02:45,920 –> 00:02:48,560
و این به من یک خطای نوع می
82
00:02:48,560 –> 00:02:49,920
دهد، بنابراین من موفق شدم تابعی ایجاد کنم
83
00:02:49,920 –> 00:02:52,239
که در واقع حداقل دو
84
00:02:52,239 –> 00:02:54,160
نوع خطا ممکن را امکان پذیر می کند و ما
85
00:02:54,160 –> 00:02:55,599
اکنون می خواهیم انجام دهیم این است که برای آن تله
86
00:02:55,599 –> 00:02:57,200
می گذاریم و قبل از انجام این کار،
87
00:02:57,200 –> 00:03:00,800
بیایید به نحو به دام انداختن خطا نگاهی بیندازیم،
88
00:03:02,560 –> 00:03:04,000
ما به نحو به دام انداختن خطا نگاه می
89
00:03:04,000 –> 00:03:05,680
کنیم.
90
00:03:05,680 –> 00:03:07,599
بیانیه سعی می کند یک
91
00:03:07,599 –> 00:03:09,360
تقسیم بر صفر
92
00:03:09,360 –> 00:03:11,920
به خطا را چاپ کند چیزی را که قبل از آن به دام می اندازد
93
00:03:11,920 –> 00:03:13,360
یا اینکه اگر
94
00:03:13,360 –> 00:03:15,680
بخواهم این برنامه را همانطور که هست اجرا کنم با کلمه try و
95
00:03:15,680 –> 00:03:17,280
سپس یک
96
00:03:17,280 –> 00:03:18,879
97
00:03:18,879 –> 00:03:20,400
دونقطه ادامه می دهید. برای من یک پیغام خطایی وجود دارد
98
00:03:20,400 –> 00:03:22,879
زیرا try باید با پذیرش همراه باشد
99
00:03:22,879 –> 00:03:24,239
100
00:03:24,239 –> 00:03:26,239
و در بند پذیرش شما
101
00:03:26,239 –> 00:03:28,239
اقدامات اصلاحی انجام می دهید هر چه ممکن است در
102
00:03:28,239 –> 00:03:29,680
این مورد ممکن است چاپ
103
00:03:29,680 –> 00:03:31,200
پیامی باشد که می گوید شما نمی توانید بر صفر تقسیم
104
00:03:31,200 –> 00:03:32,400
105
00:03:32,400 –> 00:03:33,680
کنید کلمات دیگری وجود دارد که شما می توانید از
106
00:03:33,680 –> 00:03:35,040
موارد دیگری استفاده کنید و در نهایت
107
00:03:35,040 –> 00:03:36,879
در پایان این آموزش به آن خواهیم رسید و
108
00:03:36,879 –> 00:03:38,319
همچنین می توانید انواع مختلف
109
00:03:38,319 –> 00:03:40,640
خطاها را آزمایش کنید، اما این اساس کار است،
110
00:03:40,640 –> 00:03:42,319
بنابراین بیایید این را در کد خود عملی
111
00:03:42,319 –> 00:03:43,599
112
00:03:43,599 –> 00:03:45,440
کنیم، کاری که انجام خواهیم داد اضافه کردن است. برخی از خطاها را
113
00:03:45,440 –> 00:03:47,360
قبل از بیانیه توهینآمیز یا بالقوه توهینآمیز خود به دام انداختهایم،
114
00:03:47,360 –> 00:03:49,280
115
00:03:49,280 –> 00:03:50,560
بعداً خواهیم دید که شاید
116
00:03:50,560 –> 00:03:52,480
بهتر باشد این کار را در تابع انجام دهیم،
117
00:03:52,480 –> 00:03:53,840
اما فعلاً آن را در
118
00:03:53,840 –> 00:03:56,400
بدنه اصلی برنامه قرار میدهیم
119
00:03:56,400 –> 00:03:58,560
تا این کار را انجام دهیم. ما p را به
120
00:03:58,560 –> 00:04:01,599
دام خواهیم انداخت خطاهای احتمالی
121
00:04:01,599 –> 00:04:03,519
و برای انجام این کار من فقط می توانم کلمه
122
00:04:03,519 –> 00:04:05,760
try و سپس دونقطه را قرار دهم و سپس باید
123
00:04:05,760 –> 00:04:08,159
هر چیزی را که به دنبال آن است تورفتگی کنم
124
00:04:08,159 –> 00:04:11,519
و من باید یک بند پذیرش قرار دهم
125
00:04:11,519 –> 00:04:13,200
و در بند قبول می توانم بگویم
126
00:04:13,200 –> 00:04:14,879
اگر همه چیز اشتباه شود چه اتفاقی می افتد. فقط
127
00:04:14,879 –> 00:04:16,000
128
00:04:16,000 –> 00:04:19,120
در این مورد مشکلی را چاپ می کنم
129
00:04:19,120 –> 00:04:22,000
که یک پیغام خطای مبهم خوب است،
130
00:04:22,000 –> 00:04:24,000
بنابراین اگر سعی کنم اجرا کنم که می توانید ببینید
131
00:04:24,000 –> 00:04:26,000
پیام اشتباهی را دریافت می کنم
132
00:04:26,000 –> 00:04:27,840
زیرا نمی توانید
133
00:04:27,840 –> 00:04:30,000
متقابل چیزبرگر را قبول کنید اما می توانید آن را دریافت کنید.
134
00:04:30,000 –> 00:04:32,560
متقابل از 42. بنابراین اگر اکنون دوباره این را اجرا
135
00:04:32,560 –> 00:04:35,040
کنم، به من عدد متقابل را می دهد که
136
00:04:35,040 –> 00:04:37,120
ظاهراً همان عدد است،
137
00:04:37,120 –> 00:04:38,960
بنابراین این به دام انداختن خطای اساسی است،
138
00:04:38,960 –> 00:04:40,639
بیایید اکنون ببینیم که چگونه می توانید
139
00:04:40,639 –> 00:04:43,840
انواع مختلف خطاها را
140
00:04:44,880 –> 00:04:48,000
به دام بیاندازید، بنابراین درست قبل از اینکه به کشف انواع خاصی از خطاها نگاه کنیم.
141
00:04:48,000 –> 00:04:49,520
خطاها یک
142
00:04:49,520 –> 00:04:51,120
یادآوری سریع از مناطقی که ممکن است
143
00:04:51,120 –> 00:04:52,560
ایجاد کنیم در
144
00:04:52,560 –> 00:04:54,080
اینجا هستند من سعی می کنم
145
00:04:54,080 –> 00:04:56,639
اگر این برنامه را اجرا کنم یک تقسیم بر صفر را چاپ
146
00:04:56,639 –> 00:04:58,479
147
00:04:58,479 –> 00:05:00,320
کنم اگر آن خط کد را نظر دهم و در
148
00:05:00,320 –> 00:05:02,560
عوض سعی کنم یک را تقسیم کنم خطای تقسیم صفر دریافت می کنم. ب مقداری از
149
00:05:02,560 –> 00:05:06,080
متن، سپس من یک خطای نوع دریافت
150
00:05:06,080 –> 00:05:07,759
151
00:05:07,759 –> 00:05:09,759
میکنم، بنابراین این دو ناحیه خاص هستند که میخواهیم به دام بیاندازیم و برای انجام این کار،
152
00:05:09,759 –> 00:05:12,160
میتوانید کلمه قبول را تغییر دهید و بعد از آن
153
00:05:12,160 –> 00:05:14,160
در نوع خاصی از ناحیه که میخواهید به دام بیاندازید تایپ کنید.
154
00:05:14,160 –> 00:05:15,440
155
00:05:15,440 –> 00:05:17,759
من میخواستم خطای صفر را تقسیم کنم، از
156
00:05:17,759 –> 00:05:19,440
قبل نمیتوانم به یاد بیاورم که نام آن چه بود،
157
00:05:19,440 –> 00:05:21,280
اما اگر div
158
00:05:21,280 –> 00:05:22,639
را تایپ کنم به شرطی که بیشتر از آن تایپ نکنم،
159
00:05:22,639 –> 00:05:24,639
میتوانید خطای تقسیم صفر را ببینید،
160
00:05:24,639 –> 00:05:26,720
یکی از احتمالات موجود در لیست است،
161
00:05:26,720 –> 00:05:28,240
بنابراین سعی میکند برای کمک به شما،
162
00:05:28,240 –> 00:05:29,680
آن را انتخاب می کنم و یک دونقطه
163
00:05:29,680 –> 00:05:30,639
بعد از آن قرار می دهم
164
00:05:30,639 –> 00:05:32,400
و اگر خطای تقسیم صفر وجود داشته باشد
165
00:05:32,400 –> 00:05:35,039
، پیامی را چاپ می کنم که می گوید نمی توان
166
00:05:35,039 –> 00:05:38,600
بر صفر تقسیم کرد،
167
00:05:38,800 –> 00:05:41,039
در غیر این صورت نوع بعدی خطایی که
168
00:05:41,039 –> 00:05:42,400
قرار است به دام بیاندازم
169
00:05:42,400 –> 00:05:44,240
، یک خطا را تایپ کنید و این یکی را می
170
00:05:44,240 –> 00:05:46,160
توانم به خاطر بسپارم
171
00:05:46,160 –> 00:05:48,479
و اگر
172
00:05:48,479 –> 00:05:51,520
اینطور است، پیامی می دهم که مطمئن شوید
173
00:05:51,520 –> 00:05:52,479
174
00:05:52,479 –> 00:05:55,199
از یک عدد استفاده کنید
175
00:05:56,160 –> 00:05:58,000
اکنون اگر به این نقطه رسیدم می دانم که
176
00:05:58,000 –> 00:06:00,240
خطای تقسیم صفر نداشتم و یک خطا
177
00:06:00,240 –> 00:06:02,319
نداشتم. خطای تایپ نیز وجود دارد،
178
00:06:02,319 –> 00:06:03,919
اما هنوز ممکن است برنامه
179
00:06:03,919 –> 00:06:06,240
من خراب شده باشد، بنابراین من فقط با
180
00:06:06,240 –> 00:06:08,400
قرار دادن یک ge مطمئن می شوم شرط پذیرش عمومی برای از
181
00:06:08,400 –> 00:06:10,800
بین بردن همه احتمالات دیگر در این
182
00:06:10,800 –> 00:06:14,720
مورد،
183
00:06:15,520 –> 00:06:17,199
در پایان این آموزش
184
00:06:17,199 –> 00:06:20,080
می گویم مشکل دیگری پیش آمده
185
00:06:20,080 –> 00:06:22,319
186
00:06:22,319 –> 00:06:25,280
187
00:06:25,280 –> 00:06:27,199
است. اجرا کردن که اگر آن را
188
00:06:27,199 –> 00:06:28,240
در لحظه اجرا کنم، متقابل را به من می دهد
189
00:06:28,240 –> 00:06:29,600
زیرا ایرادی
190
00:06:29,600 –> 00:06:31,840
ندارد که متقابل 42
191
00:06:31,840 –> 00:06:33,840
را بگیرم. اگر آن را به صفر تغییر دهم، نمی توانم آن
192
00:06:33,840 –> 00:06:36,000
را بر صفر تقسیم کنم و اگر آن را به کمی تغییر دهم.
193
00:06:36,000 –> 00:06:37,919
از متنی مانند bob من سعی می کنم اجرا کنم
194
00:06:37,919 –> 00:06:39,759
که به شما اطمینان می دهد از یک عدد استفاده می کنید
195
00:06:39,759 –> 00:06:41,600
، من نمی توانم راهی برای
196
00:06:41,600 –> 00:06:43,520
ایجاد هر نوع خطای
197
00:06:43,520 –> 00:06:45,120
دیگری فکر کنم، بنابراین فکر نمی کنم بتوانم آن را آزمایش کنم
198
00:06:45,120 –> 00:06:47,280
بیانیه پایانی من
199
00:06:47,280 –> 00:06:48,800
این است که چگونه میتوانید انواع خاصی
200
00:06:48,800 –> 00:06:51,440
از خطا را آزمایش کنید،
201
00:06:53,440 –> 00:06:55,280
همه مثالهایی که تاکنون انجام دادهایم
202
00:06:55,280 –> 00:06:57,199
از مفهومی به نام حباب کردن خطا استفاده کردهاند
203
00:06:57,199 –> 00:06:58,400
204
00:06:58,400 –> 00:07:00,000
205
00:07:00,000 –> 00:07:02,160
206
00:07:02,160 –> 00:07:04,000
207
00:07:04,000 –> 00:07:05,440
.
208
00:07:05,440 –> 00:07:07,680
خطای حباب کردن آن را مدیریت کنید
209
00:07:07,680 –> 00:07:10,160
متأسفانه در حال ارتقاء به تابع فراخوانی است
210
00:07:10,160 –> 00:07:12,160
که اکنون آن را مدیریت می کند
211
00:07:12,160 –> 00:07:13,680
، استدلال خوبی وجود دارد که
212
00:07:13,680 –> 00:07:15,599
می گوییم همیشه باید خطاها را در
213
00:07:15,599 –> 00:07:17,440
سطحی که در آن رخ می دهند مدیریت
214
00:07:17,440 –> 00:07:18,880
کنید، مشکل رویکردی که من تاکنون اتخاذ کرده ام این
215
00:07:18,880 –> 00:07:20,560
است که اگرچه این کار به
216
00:07:20,560 –> 00:07:22,800
خوبی انجام می شود. ممکن است شخص دیگری که کمتر
217
00:07:22,800 –> 00:07:24,720
روشن
218
00:07:24,720 –> 00:07:26,800
فکری دارد، تابع متقابل من را فراخوانی کند و
219
00:07:26,800 –> 00:07:28,479
خطای رخ داده را کنترل نکند
220
00:07:28,479 –> 00:07:30,319
و در این صورت فقط خراب می شود،
221
00:07:30,319 –> 00:07:31,759
در حالی که اگر من تله گذاری خطا
222
00:07:31,759 –> 00:07:33,520
در داخل تابع رخ می داد
223
00:07:33,520 –> 00:07:35,520
، آن مشکل را نداشتم،
224
00:07:35,520 –> 00:07:37,039
بنابراین یک خطا ایجاد کردم. فایل جداگانه ای به نام
225
00:07:37,039 –> 00:07:39,199
no error bubbling dot py
226
00:07:39,199 –> 00:07:40,400
که در آن سعی می کنم این اصل را به شما نشان دهم
227
00:07:40,400 –> 00:07:42,080
و در مورد برخی
228
00:07:42,080 –> 00:07:44,479
از مسائل مربوط
229
00:07:44,479 –> 00:07:46,319
به آن صحبت کنم، بنابراین من تابع خود را در آن ایجاد
230
00:07:46,319 –> 00:07:47,919
کرده ام و می خواهم به دام انداختن خطا به
231
00:07:47,919 –> 00:07:49,919
آن اضافه کنم. شما دقیقاً به همین روش عمل میکنید،
232
00:07:49,919 –> 00:07:52,080
بنابراین من یک عبارت try را در آن قرار میدهم
233
00:07:52,080 –> 00:07:53,919
و اگر همه چیز خوب بود، یکی را
234
00:07:53,919 –> 00:07:55,520
تقسیم بر عدد برمیگردانم
235
00:07:55,520 –> 00:07:56,879
و سپس یک عبارت پذیرش کلی خواهم داشت،
236
00:07:56,879 –> 00:07:59,280
بنابراین من زحمتی برای گرفتن
237
00:07:59,280 –> 00:08:01,199
نوع خاص ندارم. از er ror
238
00:08:01,199 –> 00:08:03,520
اما سوال این است که اگر از
239
00:08:03,520 –> 00:08:04,960
240
00:08:04,960 –> 00:08:06,479
241
00:08:06,479 –> 00:08:07,759
242
00:08:07,759 –> 00:08:09,840
243
00:08:09,840 –> 00:08:11,599
244
00:08:11,599 –> 00:08:13,280
کار افتاد چه کنم چه کنم؟ تایپ قوی را از دست بده،
245
00:08:13,280 –> 00:08:15,199
246
00:08:15,199 –> 00:08:17,520
بنابراین کاری که من انجام می دهم این است که یک
247
00:08:17,520 –> 00:08:19,440
پیغام خطا را در اینجا چاپ کنم و بگوید
248
00:08:19,440 –> 00:08:20,960
مشکل من چیست،
249
00:08:20,960 –> 00:08:23,520
این است که من نمی توانم یک Reciprocal ایجاد کنم
250
00:08:23,520 –> 00:08:26,000
251
00:08:26,000 –> 00:08:28,080
و سپس برمی گردم، باید به
252
00:08:28,080 –> 00:08:29,599
طور پیش فرض چیزی را
253
00:08:29,599 –> 00:08:32,080
برگردانم، هیچ کدام را برنمی گرداند. بیایید آن را مشخص
254
00:08:32,080 –> 00:08:33,760
کنیم، البته یک کلمه کلیدی ویژه پایتون نیست،
255
00:08:33,760 –> 00:08:35,440
به این معنی که
256
00:08:35,440 –> 00:08:38,240
در زبان های دیگر مانند یک مقدار تهی است،
257
00:08:38,240 –> 00:08:41,760
بنابراین اکنون می توانم آزمایش آن را امتحان کنم
258
00:08:41,760 –> 00:08:43,440
و می توانم متقابل یک
259
00:08:43,440 –> 00:08:44,560
عدد
260
00:08:44,560 –> 00:08:46,080
را چاپ کنم، بنابراین با چیز خوبی شروع می کنم و
261
00:08:46,080 –> 00:08:47,519
آسان من اوه ها را پرینت خواهم
262
00:08:47,519 –> 00:08:50,240
گرفت دو تا را پرینت می کنم
263
00:08:50,240 –> 00:08:51,680
و اگر سعی کنم این کار را انجام دهم می بینید که
264
00:08:51,680 –> 00:08:53,440
265
00:08:53,440 –> 00:08:56,160
اگر متقابل صفر را امتحان کنم 0.5 به من می دهد
266
00:08:56,160 –> 00:08:57,600
، پیام نمی
267
00:08:57,600 –> 00:08:59,040
تواند متقابل ایجاد کند چاپ می شود
268
00:08:59,040 –> 00:09:00,000
و سپس
269
00:09:00,000 –> 00:09:02,080
برمی گردد. هیچ
270
00:09:02,080 –> 00:09:03,760
کدام در این مرحله من احتمالا پس از آن
271
00:09:03,760 –> 00:09:06,480
باید نسبتاً خسته کننده
272
00:09:06,480 –> 00:09:09,040
یک متغیر به نام
273
00:09:09,040 –> 00:09:10,399
مجموعه پاسخ ایجاد کرد که متقابل
274
00:09:10,399 –> 00:09:12,480
عدد باشد
275
00:09:12,480 –> 00:09:16,160
و سپس بررسی کنید که آیا پاسخ هیچ است یا خیر
276
00:09:16,160 –> 00:09:18,480
و اگر چنین است، حدس میزنم کاری انجام
277
00:09:18,480 –> 00:09:20,160
نخواهم داد، در عبارت گذشته قرار میدهم.
278
00:09:20,160 –> 00:09:21,680
انجام هر کاری چون من قبلاً
279
00:09:21,680 –> 00:09:23,680
پیام خطای خود را چاپ کرده ام
280
00:09:23,680 –> 00:09:28,000
در غیر این صورت پاسخ را چاپ می کنم
281
00:09:28,000 –> 00:09:30,399
بنابراین فعلاً سعی کنید دوباره آن را اجرا کنید که دریافت خواهم کرد
282
00:09:30,399 –> 00:09:32,800
نمی توانم متقابل ایجاد کنم زیرا
283
00:09:32,800 –> 00:09:33,839
نمی توانم
284
00:09:33,839 –> 00:09:36,640
اما اگر یک عدد معتبر وارد
285
00:09:36,640 –> 00:09:39,040
کنم 9.5 دریافت می کنم
286
00:09:39,040 –> 00:09:40,560
که همه چیز کاملاً نامرتب بود و شامل
287
00:09:40,560 –> 00:09:42,800
تعداد زیادی از خطوط کد اضافی بود
288
00:09:42,800 –> 00:09:46,320
، آیا راه بهتری برای انجام آن وجود دارد
289
00:09:48,320 –> 00:09:51,120
، مثال قبلی
290
00:09:51,120 –> 00:09:53,360
پیام پیام خطا را از
291
00:09:53,360 –> 00:09:55,279
داخل خود تابع چاپ کرد،
292
00:09:55,279 –> 00:09:57,279
اما کاری که انجام دادن آن خوب است این است
293
00:09:57,279 –> 00:09:59,200
که خطا را پس دهید. پیامی که در برنامه تماس نمایش داده میشود
294
00:09:59,200 –> 00:10:01,360
295
00:10:01,360 –> 00:10:03,040
چند راه برای انجام این کار
296
00:10:03,040 –> 00:10:04,800
وجود دارد، رویدادهایی را افزایش میدهیم که
297
00:10:04,800 –> 00:10:08,079
در یک ثانیه یا دقیقه
298
00:10:08,079 –> 00:10:09,279
به آنها نگاه میکنیم، اما ابتدا میخواهیم
299
00:10:09,279 –> 00:10:11,760
پیغام خطا را از یک تابع برگردانیم
300
00:10:11,760 –> 00:10:13,760
تا این کار را انجام دهیم. کاری که ما انجام خواهیم داد این است یک
301
00:10:13,760 –> 00:10:16,160
متغیر رشته ای را به تابع ارسال کنید
302
00:10:16,160 –> 00:10:18,079
و اگر باریک شد،
303
00:10:18,079 –> 00:10:19,920
متغیر رشته را به عنوان پیامی که باید
304
00:10:19,920 –> 00:10:21,920
نمایش داده شود تنظیم می کنیم و سپس سعی کنید آن را
305
00:10:21,920 –> 00:10:23,760
در کد فراخوانی تابع فراخوان انتخاب کنید،
306
00:10:23,760 –> 00:10:24,800
بلکه
307
00:10:24,800 –> 00:10:26,240
این کار نمی کند و دلیل آن این است که
308
00:10:26,240 –> 00:10:27,920
رشته ها هستند غیر قابل تغییر است اما من می خواهم
309
00:10:27,920 –> 00:10:29,839
این را به شما ثابت کنم و سپس به دنبال راه
310
00:10:29,839 –> 00:10:32,240
حلی برای دور زدن آن با تبدیل آن به یک
311
00:10:32,240 –> 00:10:33,760
شیء تغییرپذیر خواهیم بود
312
00:10:33,760 –> 00:10:35,040
و ممکن است بخواهید فکر کنید که چه چیزی
313
00:10:35,040 –> 00:10:36,800
خواهد بود،
314
00:10:36,800 –> 00:10:39,760
بنابراین ابتدا یک متغیر ایجاد می کنیم،
315
00:10:39,760 –> 00:10:42,480
اجازه دهید آن را فراخوانی کنیم. پیغام خطا داده
316
00:10:42,480 –> 00:10:44,320
و تنظیم کنید که ابتدا پیام خطایی
317
00:10:44,320 –> 00:10:47,200
نمایش داده شود، یکی وجود ندارد
318
00:10:47,200 –> 00:10:48,320
و
319
00:10:48,320 –> 00:10:50,800
سپس متغیری به نام پاسخ ایجاد می
320
00:10:50,800 –> 00:10:52,800
کنم و تابع متقابل خود را فراخوانی می کنم
321
00:10:52,800 –> 00:10:55,120
و دو مورد را پاس می دهم. در
322
00:10:55,120 –> 00:10:57,440
عددی که میخواهم متقابل
323
00:10:57,440 –> 00:11:00,720
و متغیر پیغام خطا را بگیرم
324
00:11:00,720 –> 00:11:04,240
و بعد از اجرای آن میتوانم تست کنم
325
00:11:04,240 –> 00:11:07,440
که آیا خطایی رخ داده است یا خیر،
326
00:11:07,839 –> 00:11:09,600
میتوانم طول
327
00:11:09,600 –> 00:11:11,040
پیام خطا را بررسی کنم
328
00:11:11,040 –> 00:11:13,120
و اگر طول پیام
329
00:11:13,120 –> 00:11:14,480
خطا صفر است.
330
00:11:14,480 –> 00:11:16,880
یعنی هیچ خطایی رخ نداده و می توانم
331
00:11:16,880 –> 00:11:19,680
با خوشحالی پاسخ را چاپ کنید در
332
00:11:19,680 –> 00:11:21,200
غیر این صورت
333
00:11:21,200 –> 00:11:23,360
می توانم پیام خطایی را
334
00:11:23,360 –> 00:11:24,560
که تنظیم کرده ام چاپ
335
00:11:24,560 –> 00:11:25,839
کنم همه چیز بسیار منطقی و
336
00:11:25,839 –> 00:11:28,640
معقول است
337
00:11:28,640 –> 00:11:30,880
338
00:11:30,880 –> 00:11:32,480
339
00:11:32,480 –> 00:11:34,880
340
00:11:34,880 –> 00:11:36,480
. میتوانم اینها را هر چیزی
341
00:11:36,480 –> 00:11:37,920
که دوست دارم بنامم، بنابراین
342
00:11:37,920 –> 00:11:40,720
فقط برای تأکید بر این واقعیت، آن را متفاوت مینامم
343
00:11:40,720 –> 00:11:43,200
و اساساً میتوانم تلهگذاری خطای خود را اضافه کنم
344
00:11:43,200 –> 00:11:45,600
345
00:11:46,079 –> 00:11:46,880
و
346
00:11:46,880 –> 00:11:49,519
اگر مشکلی پیش آمد، کاری که انجام میدهم این است
347
00:11:49,519 –> 00:11:51,760
که پیام خطای خود را روی این تنظیم
348
00:11:51,760 –> 00:11:52,800
349
00:11:52,800 –> 00:11:55,279
کنم، فقط میگویم مشکلی به وضوح پیش آمده است
350
00:11:55,279 –> 00:11:56,639
که میتوانید این را
351
00:11:56,639 –> 00:11:58,240
مشخصتر کنید و انواع مختلفی از
352
00:11:58,240 –> 00:11:59,600
خطاها را برای بازگرداندن پیامهای خطای مختلف به دام بیندازید
353
00:11:59,600 –> 00:12:00,800
354
00:12:00,800 –> 00:12:02,160
و سپس من باید چیزی را برگردانم
355
00:12:02,160 –> 00:12:04,560
و چیزی که برمیگردانم هیچکدام نیست در واقع
356
00:12:04,560 –> 00:12:05,920
هر چیزی که برمیگردانم هرگز نخواهد
357
00:12:05,920 –> 00:12:07,440
بود. برداشته شد زیرا می دانم که یک
358
00:12:07,440 –> 00:12:10,160
پیغام خطایی رخ داده است،
359
00:12:10,160 –> 00:12:12,320
بنابراین اگر اکنون اجرا کنم باید کار کند
360
00:12:12,320 –> 00:12:13,200
که
361
00:12:13,200 –> 00:12:15,279
باید ببینید 0.5 می گیرم
362
00:12:15,279 –> 00:12:17,920
زیرا همه چیز مشکلی نداشت اما اگر عدد صفر را به عنوان عدد خود ارسال
363
00:12:17,920 –> 00:12:20,079
کنم تا متقابل
364
00:12:20,079 –> 00:12:22,399
آن را بگیرم به من نمی دهد. کاری که انجام نمی دهد این است
365
00:12:22,399 –> 00:12:24,800
که پیام خطا را چ