در این مطلب، ویدئو صاف کردن یک شی JSON با استفاده از Recursion در پایتون با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:23:30
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,480 –> 00:00:02,240
چه خبر است coderbeit به
2
00:00:02,240 –> 00:00:04,240
یک ویدیوی دیگر از ساختارهای داده و الگوریتمها خوش آمدید،
3
00:00:04,240 –> 00:00:05,200
4
00:00:05,200 –> 00:00:07,120
امروز اینجا هستیم با ویدیوی دیگری
5
00:00:07,120 –> 00:00:08,880
در سری بازگشت به اصول خود که در
6
00:00:08,880 –> 00:00:12,000
7
00:00:12,000 –> 00:00:13,920
8
00:00:13,920 –> 00:00:15,920
آن به بررسی آنها میپردازیم.
9
00:00:15,920 –> 00:00:16,560
10
00:00:16,560 –> 00:00:17,520
11
00:00:17,520 –> 00:00:19,600
درست جلوی چشمان شما آنها را برای شما حل کنید
12
00:00:19,600 –> 00:00:22,000
این مشکل ناشی از یک
13
00:00:22,000 –> 00:00:23,920
مشکل مصاحبه واقعی است که
14
00:00:23,920 –> 00:00:26,400
من در شغل فعلی ام داشتم مدیر فعلی من
15
00:00:26,400 –> 00:00:28,800
مدیر فعلی من نیز در آخرین شرکتم با او کار می کردم
16
00:00:28,800 –> 00:00:30,720
او سرپرست تیم ما در
17
00:00:30,720 –> 00:00:32,640
آخرین شرکت من بود که من را استخدام کرد برای این
18
00:00:32,640 –> 00:00:35,280
کار بعدی اما اوم ما اکنون در حال
19
00:00:35,280 –> 00:00:37,200
مصاحبه با افراد هستیم تا برخی از
20
00:00:37,200 –> 00:00:39,680
موقعیت های تیم خود را پر کنیم و او
21
00:00:39,680 –> 00:00:41,520
این سوال را به من یادآوری کرد
22
00:00:41,520 –> 00:00:44,320
که در آخرین کاری که با او کار کردم از من پرسید
23
00:00:44,320 –> 00:00:46,000
، بنابراین
24
00:00:46,000 –> 00:00:47,840
امیدوارم از این سوال لذت ببرید.
25
00:00:47,840 –> 00:00:50,320
بدیهی است که برای من مثبت عمل کرد،
26
00:00:50,320 –> 00:00:52,719
بنابراین برای من کمی معنی دارد
27
00:00:52,719 –> 00:00:55,760
و خوب است، بنابراین بیایید وارد آن
28
00:00:55,760 –> 00:00:57,600
مشکل این هفته شویم،
29
00:00:57,600 –> 00:00:59,520
تابعی بنویسیم تا یک
30
00:00:59,520 –> 00:01:02,000
شی json را با کلیدهای تو در تو در یک
31
00:01:02,000 –> 00:01:04,159
سطح صاف کنیم. این خیلی ساده
32
00:01:04,159 –> 00:01:06,479
است، من فکر میکنم همه ما json را دیدهایم
33
00:01:06,479 –> 00:01:08,000
و
34
00:01:08,000 –> 00:01:10,400
چگونه میتواند
35
00:01:10,400 –> 00:01:13,520
ویژگیهای عمیق تودرتو داشته باشد، جایی که
36
00:01:13,520 –> 00:01:16,400
اشیایی در داخل شی یا اشعهها و غیره وجود دارد
37
00:01:16,400 –> 00:01:18,960
و میتواند بهطور بیپایان
38
00:01:18,960 –> 00:01:20,560
عمیقا تو در تو
39
00:01:20,560 –> 00:01:21,920
40
00:01:21,920 –> 00:01:23,439
درآید. یک
41
00:01:23,439 –> 00:01:25,360
چیز بسیار رایج
42
00:01:25,360 –> 00:01:28,080
در عادی سازی داده ها یا بیرون کشیدن
43
00:01:28,080 –> 00:01:30,640
همه آن فیلدها و اساساً ما می
44
00:01:30,640 –> 00:01:32,799
خواهیم همچنان ساختار
45
00:01:32,799 –> 00:01:34,560
json را حفظ کنیم، می خواهیم بدانیم که
46
00:01:34,560 –> 00:01:36,560
ممکن است چیزی عمیقاً تو در تو باشد، اما
47
00:01:36,560 –> 00:01:38,560
می خواهیم همه چیز را در یک
48
00:01:38,560 –> 00:01:41,040
سطح در یک سطح داشته باشیم. json بنابراین بیایید به یک
49
00:01:41,040 –> 00:01:42,960
مثال بسیار سریع نگاه کنیم،
50
00:01:42,960 –> 00:01:45,920
بنابراین در اینجا ما
51
00:01:45,920 –> 00:01:47,759
یک شی بزرگ داریم
52
00:01:47,759 –> 00:01:51,119
که کلیدها مکانهایی هستند و میتوانید ببینید که
53
00:01:51,119 –> 00:01:53,119
ما نوعی از
54
00:01:53,119 –> 00:01:55,040
شما داریم که میدانید سطح اول وجود دارد که
55
00:01:55,040 –> 00:01:57,680
ایالات متحده آمریکا کانادا
56
00:01:57,680 –> 00:01:59,920
مکزیک است و سپس تعدادی وجود دارد.
57
00:01:59,920 –> 00:02:02,799
چیزهای عمیق تو در تو در ایالات متحده در
58
00:02:02,799 –> 00:02:05,920
شهرهای ایالات متحده که می دانید شهرهای ام
59
00:02:05,920 –> 00:02:08,239
نیوجرسی نیویورک و غیره و سپس
60
00:02:08,239 –> 00:02:10,160
کلیدهای تودرتوی بیشتری وجود دارد که
61
00:02:10,160 –> 00:02:12,560
محله ها یا مناطق هستند، بنابراین در اینجا ما
62
00:02:12,560 –> 00:02:14,879
نیوآرک و بروکلین را داریم منهتن و
63
00:02:14,879 –> 00:02:17,520
در نهایت در هر یک از اینها برای این
64
00:02:17,520 –> 00:02:19,280
مثال من فقط چند دوست یا
65
00:02:19,280 –> 00:02:21,760
افرادی را که می شناسم که در آن مکان ها زندگی می کنند قرار دادم
66
00:02:21,760 –> 00:02:23,520
و می توانید ببینید که ما رشته هایی داریم و آرایه هایی داریم
67
00:02:23,520 –> 00:02:25,440
68
00:02:25,440 –> 00:02:28,160
اما اساساً مقداری تودرتو داریم
69
00:02:28,160 –> 00:02:30,000
و می توان آنها را بی نهایت تودرتو کرد.
70
00:02:30,000 –> 00:02:32,319
مطمئن نیستیم چند سطح درست وجود دارد،
71
00:02:32,319 –> 00:02:35,120
بنابراین میخواهیم از این ساختار به
72
00:02:35,120 –> 00:02:36,480
چیزی برویم که بیشتر شبیه به این است،
73
00:02:36,480 –> 00:02:38,800
که فقط یکی است که میدانید فقط
74
00:02:38,800 –> 00:02:41,440
یک سطح برای این json وجود دارد و میتوانید ببینید
75
00:02:41,440 –> 00:02:42,879
که هر
76
00:02:42,879 –> 00:02:45,280
کلید حفظ میشود و سپس ما
77
00:02:45,280 –> 00:02:48,239
با خط زیر
78
00:02:48,239 –> 00:02:51,120
کلیدهای تو در تو را به کلید اضافه کنید، بنابراین در اینجا ما
79
00:02:51,120 –> 00:02:53,760
کلید ایالات متحده را داریم که خط زیر خط نیوجرسی
80
00:02:53,760 –> 00:02:56,720
زیرخط نیوآرک زیرخط صفر جرمی است
81
00:02:56,720 –> 00:02:58,720
زیرا در شاخص صفر اینجا
82
00:02:58,720 –> 00:03:01,440
جرمی داریم و سپس زیر نمره یک
83
00:03:01,440 –> 00:03:03,840
استیسی داریم زیرا او نفر دوم است.
84
00:03:03,840 –> 00:03:05,519
این آرایه درست
85
00:03:05,519 –> 00:03:08,159
و غیره کاملاً خود توضیحی است،
86
00:03:08,159 –> 00:03:11,280
پس بیایید این بچه را کدنویسی
87
00:03:11,280 –> 00:03:13,440
کنیم، بنابراین ما دوباره از پایتون استفاده می کنیم،
88
00:03:13,440 –> 00:03:14,640
فقط به این دلیل که سعی می کنیم
89
00:03:14,640 –> 00:03:16,560
چیزها را تغییر دهیم، شاید افرادی مانند پیتو n
90
00:03:16,560 –> 00:03:17,760
91
00:03:17,760 –> 00:03:20,959
همچنین و طبق معمول من در pycharm هستم و
92
00:03:20,959 –> 00:03:24,159
فقط یک فایل به نام flatten.pi دارم،
93
00:03:24,159 –> 00:03:28,319
بنابراین طبق معمول میخواهم um خود را
94
00:03:28,319 –> 00:03:29,440
اضافه کنم،
95
00:03:29,440 –> 00:03:32,879
میدانید که آیا نام dunder اصلی است یا خیر،
96
00:03:32,879 –> 00:03:34,959
میدانید که تابع ما را اجرا کنید، بنابراین اگر انجام شد
97
00:03:34,959 –> 00:03:36,239
under name
98
00:03:36,239 –> 00:03:38,560
برابر است با
99
00:03:38,560 –> 00:03:39,519
100
00:03:39,519 –> 00:03:41,440
سمت راست اصلی
101
00:03:41,440 –> 00:03:44,080
ما تماس می گیریم اوه اجازه دهید بدانید بگویید
102
00:03:44,080 –> 00:03:47,480
json مسطح شود
103
00:03:49,840 –> 00:03:54,400
و بیایید json مسطح را تعریف کنیم
104
00:03:56,400 –> 00:03:59,120
و این موضوع را می گیرد.
105
00:03:59,120 –> 00:04:01,280
106
00:04:01,280 –> 00:04:02,319
107
00:04:02,319 –> 00:04:04,720
108
00:04:04,720 –> 00:04:07,439
109
00:04:07,439 –> 00:04:10,400
بنابراین من فکر می کنم آنچه برای این سوال مهم است این
110
00:04:10,400 –> 00:04:12,560
111
00:04:12,560 –> 00:04:16,160
است که ما نمی دانیم چقدر
112
00:04:16,160 –> 00:04:19,279
این json تودرتو چقدر عمیق است،
113
00:04:19,279 –> 00:04:21,358
ما دقیقا نمی دانیم چقدر باید طی کنیم،
114
00:04:21,358 –> 00:04:24,320
بنابراین بلافاصله به بازگشت فکر می کنم
115
00:04:24,320 –> 00:04:27,280
زیرا ما نمیتوانیم فقط از یک
116
00:04:27,280 –> 00:04:28,560
حلقه درست
117
00:04:28,560 –> 00:04:29,440
برای
118
00:04:29,440 –> 00:04:31,440
off استفاده کنیم، میدانید برای i
119
00:04:31,440 –> 00:04:33,680
در برابر سه و سپس حلقه را از طریق
120
00:04:33,680 –> 00:04:36,320
سه سطح انجام میدهیم که ممکن است بینهایت
121
00:04:36,320 –> 00:04:39,520
فیلدهای uh تودرتو داشته باشیم، بنابراین
122
00:04:39,520 –> 00:04:42,560
باید مقداری بازگشت انجام دهیم تا به نوعی
123
00:04:42,560 –> 00:04:45,280
ادامه دهیم تا زمانی که هر زمان که به rec فکر می کنم، یک قاب پایه
124
00:04:45,280 –> 00:04:47,440
یا چیز دیگری را از روی چوب ضربه بزنید
125
00:04:47,440 –> 00:04:49,520
126
00:04:49,520 –> 00:04:51,919
ursion اولین چیزی که دوست دارم به آن فکر کنم این است
127
00:04:51,919 –> 00:04:53,919
که موارد پایه من چیست زیرا
128
00:04:53,919 –> 00:04:56,560
این بلوک های سازنده تابع بازگشتی شما
129
00:04:56,560 –> 00:04:57,520
است
130
00:04:57,520 –> 00:04:58,479
که
131
00:04:58,479 –> 00:05:01,680
موارد پایه واقعاً نشان دهنده زمانی هستند که
132
00:05:01,680 –> 00:05:04,000
به رایانه سیگنال می دهید، می دانید سلام بس کنید،
133
00:05:04,000 –> 00:05:05,840
ما کاری را به پایان رساندیم.
134
00:05:05,840 –> 00:05:07,039
اینجا
135
00:05:07,039 –> 00:05:09,600
و بنابراین برای این، من فکر می کنم
136
00:05:09,600 –> 00:05:11,520
اول از همه بیایید مثال خود
137
00:05:11,520 –> 00:05:13,919
را در ویرایشگر بیاوریم تا
138
00:05:13,919 –> 00:05:15,919
در واقع شما بتوانید در مورد چیزی صحبت کنید
139
00:05:15,919 –> 00:05:17,280
و بدانید در مورد چه چیزی صحبت می کنیم، بنابراین من
140
00:05:17,280 –> 00:05:19,600
فقط می خواهم نمونه ای را که داشتم کپی کنم.
141
00:05:19,600 –> 00:05:23,240
در اسلایدهای اینجا
142
00:05:26,000 –> 00:05:29,600
، فرض کنید شی تودرتو
143
00:05:29,600 –> 00:05:30,880
برابر با
144
00:05:30,880 –> 00:05:33,600
آن است، بنابراین در اینجا ما شی تودرتوی خود را
145
00:05:33,600 –> 00:05:35,360
داریم و میخواهیم آن را به اینجا منتقل کنیم
146
00:05:35,360 –> 00:05:38,160
147
00:05:38,160 –> 00:05:41,280
و حدس میزنم میتوانیم چاپ کنیم زیرا
148
00:05:41,280 –> 00:05:42,320
میدانیم که میخواهیم ببینیم
149
00:05:42,320 –> 00:05:44,400
چه چیزی به دست میآوریم. از این تابع
150
00:05:44,400 –> 00:05:47,680
خوب است، بنابراین بیایید در مورد موارد پایه خود صحبت کنیم،
151
00:05:47,680 –> 00:05:50,639
من فکر می کنم موارد پایه ما همیشه خواهد
152
00:05:50,639 –> 00:05:54,400
بود اگر مقدار درست باشد اگر مقدار
153
00:05:54,400 –> 00:05:57,039
در یک ویژگی یا کلید
154
00:05:57,039 –> 00:06:00,000
خاص یک شی یا یک لیست
155
00:06:00,000 –> 00:06:01,919
um باشد
156
00:06:01,919 –> 00:06:04,000
یا در واقع فکر می کنم فقط اگر یک
157
00:06:04,000 –> 00:06:06,720
شی باشد ما می خواهیم به بازگشت درست ادامه دهیم
158
00:06:06,720 –> 00:06:09,280
159
00:06:09,280 –> 00:06:12,080
اگر یک
160
00:06:12,160 –> 00:06:15,039
رشته یا یک عدد صحیح یا لیستی است که
161
00:06:15,039 –> 00:06:16,639
می خواهیم کاری را به درستی
162
00:06:16,639 –> 00:06:19,120
انجام دهیم، می خواهیم به پایین رفتن
163
00:06:19,120 –> 00:06:20,960
ادامه دهیم و سپس به
164
00:06:20,960 –> 00:06:22,479
تابعی که از نوع خودمان است سیگنال دهیم.
165
00:06:22,479 –> 00:06:26,000
ما به پایان خود رسیدهایم،
166
00:06:26,000 –> 00:06:27,440
بنابراین
167
00:06:27,440 –> 00:06:29,759
فکر میکنم کاری که میخواهیم انجام دهیم این
168
00:06:29,759 –> 00:06:31,600
است که اولین کاری که میخواهیم انجام
169
00:06:31,600 –> 00:06:33,600
دهیم این است که میخواهیم یک شی را درست برگردانیم،
170
00:06:33,600 –> 00:06:34,560
171
00:06:34,560 –> 00:06:37,039
بنابراین این اتفاق میافتد
172
00:06:37,039 –> 00:06:38,960
. میخواهیم شیء
173
00:06:38,960 –> 00:06:41,440
خود را با سطح تک
174
00:06:41,440 –> 00:06:44,639
خودمان برگردانیم، بنابراین فرض کنید بازگشت ما در اینجا این
175
00:06:44,639 –> 00:06:45,840
است و ما قطعاً
176
00:06:45,840 –> 00:06:48,960
آن سمت راست را
177
00:06:48,960 –> 00:06:52,240
برمیگردانیم um قرمز خوب است، بنابراین
178
00:06:52,240 –> 00:06:56,400
این شیء با تک کلید
179
00:06:56,400 –> 00:06:58,639
و من فکر می کنم برای این تابع
180
00:06:58,639 –> 00:07:01,199
ما ممکن است بخواهیم تابع دیگری را
181
00:07:01,199 –> 00:07:03,680
در json مسطح ایجاد کنیم زیرا کاری که
182
00:07:03,680 –> 00:07:06,880
می خواهیم انجام دهیم این است که در واقع نمی
183
00:07:06,880 –> 00:07:10,000
خواهیم روی کل این شیء بازگشتی نداشته
184
00:07:10,000 –> 00:07:12,960
باشیم، اما در واقع ما می خواهیم برای هر یک از این کلیدها
185
00:07:12,960 –> 00:07:16,319
که می خواهیم دوباره استفاده کنیم. بیش از آن شما می دانید
186
00:07:16,319 –> 00:07:19,199
نقل قول-unquote کودکان درست است، بنابراین ما
187
00:07:19,199 –> 00:07:21,039
آنها را برای متحد برای هفتم می خواهیم در ایالات متحده ما
188
00:07:21,039 –> 00:07:22,720
میخواهیم ایالات متحده را
189
00:07:22,720 –> 00:07:25,360
تصرف کنیم و تا آخر آن را تکرار کنیم،
190
00:07:25,360 –> 00:07:27,039
و این یک نوع
191
00:07:27,039 –> 00:07:29,759
است که یک شاخه از
192
00:07:29,759 –> 00:07:31,440
بازگشت ما خواهد بود و ما یک
193
00:07:31,440 –> 00:07:34,080
شاخه از بازگشت خواهیم داشت که برای هر کدام راه میاندازیم.
194
00:07:34,080 –> 00:07:36,800
از میان این کلیدهای سطح بالا،
195
00:07:36,800 –> 00:07:38,800
بنابراین فکر میکنم برای آن
196
00:07:38,800 –> 00:07:40,479
میخواهیم عملکرد دیگری در اینجا داشته
197
00:07:40,479 –> 00:07:41,919
باشیم که به آن میرویم، این
198
00:07:41,919 –> 00:07:43,520
تابعی خواهد بود که در واقع به
199
00:07:43,520 –> 00:07:45,919
صورت بازگشتی فراخوانی میکنیم، بنابراین بیایید بگوییم این
200
00:07:45,919 –> 00:07:49,039
فقط شما میدانید مسطح شده است
201
00:07:49,039 –> 00:07:51,440
و چیزی که قرار است انجام دهد این
202
00:07:51,440 –> 00:07:53,599
است که شیء را درست می گیرد ما می
203
00:07:53,599 –> 00:07:56,479
خواهیم x یا هر چیز دیگری را مسطح کنیم. فکر نمی
204
00:07:56,479 –> 00:07:57,919
کنم بتوانیم آن را یک شی بنامیم زیرا
205
00:07:57,919 –> 00:08:00,800
ممکن است یک شی نباشد، ممکن است
206
00:08:00,800 –> 00:08:02,080
یک آرایه باشد
207
00:08:02,080 –> 00:08:05,199
یا ممکن است در واقع فقط
208
00:08:05,199 –> 00:08:06,000
209
00:08:06,000 –> 00:08:08,160
انتهای خط سمت راست باشد، بنابراین یک عدد صحیح
210
00:08:08,160 –> 00:08:10,240
یا یک رشته یا هر چیز دیگری، بنابراین من فقط می
211
00:08:10,240 –> 00:08:11,840
خواهم این x را صدا بزنم زیرا به
212
00:08:11,840 –> 00:08:13,759
نوعی دلخواه است مانند آنچه در
213
00:08:13,759 –> 00:08:15,120
اینجا اتفاق می افتد
214
00:08:15,120 –> 00:08:17,360
و فکر می کنم آرگومان دوم برای این
215
00:08:17,360 –> 00:08:19,520
تابع در حال انجام است.
216
00:08:19,520 –> 00:08:20,400
217
00:08:20,400 –> 00:08:22,160
این کلید درست است زیرا ما می رویم در
218
00:08:22,160 –> 00:08:24,479
هر تماس بازگشتی باید
219
00:08:24,479 –> 00:08:26,479
220
00:08:26,479 –> 00:08:28,479
کلیدی را که درست میسازیم پیگیری کنیم،
221
00:08:28,479 –> 00:08:31,440
میخواهیم که ایالات متحده
222
00:08:31,440 –> 00:08:34,000
زیرخط جدیدتر نیوجرسی را زیرخط کند و حتی
223
00:08:34,000 –> 00:08:36,159
اگر در حال یادآوری عملکرد هستیم. بارها
224
00:08:36,159 –> 00:08:38,719
و بارها به صورت بازگشتی همچنان می خواهیم
225
00:08:38,719 –> 00:08:41,120
آنچه را که آن کلیدی است که می
226
00:08:41,120 –> 00:08:42,958
خواهیم در اینجا بسازیم را حفظ کنیم،
227
00:08:42,958 –> 00:08:44,800
بنابراین فکر می کنم آرگومان دوم
228
00:08:44,800 –> 00:08:47,360
کلید
229
00:08:47,360 –> 00:08:50,320
و کلید خواهد بود اگر هنوز یکی نداشته باشیم،
230
00:08:50,320 –> 00:08:52,480
می خواهیم آن را به درستی مقداردهی اولیه کنیم. بنابراین فکر
231
00:08:52,480 –> 00:08:54,720
میکنم میتوانیم آن را روی یک رشته خالی خالی تنظیم کنیم
232
00:08:54,720 –> 00:08:56,800
و این به نوعی نشان
233
00:08:56,800 –> 00:08:58,720
میدهد که ما هنوز شروع نکردهایم،
234
00:08:58,720 –> 00:09:00,800
ما در ابتدای تماس
235
00:09:00,800 –> 00:09:01,920
236
00:09:01,920 –> 00:09:04,240
بازگشتی هستیم، بنابراین ما json را صاف میکنیم
237
00:09:04,240 –> 00:09:07,360
که به
238
00:09:07,360 –> 00:09:09,600
نوع شی بزرگ خود را که در واقع می خواهیم
239
00:09:09,600 –> 00:09:11,120
برگردانیم را دنبال کنید و سپس این
240
00:09:11,120 –> 00:09:13,120
تابع کوچک را مسطح می کنیم و این همان
241
00:09:13,120 –> 00:09:15,200
چیزی است که ما
242
00:09:15,200 –> 00:09:17,040
برای تک تک کلیدها
243
00:09:17,040 –> 00:09:20,160
در json تو در تو فراخوانی
244
00:09:20,160 –> 00:09:22,640
می کنیم، بنابراین پایه ما چیست موارد در اینجا
245
00:09:22,640 –> 00:09:25,839
من فکر می کنم موارد پایه ما درست است
246
00:09:25,839 –> 00:09:28,480
اگر
247
00:09:28,560 –> 00:09:30,560
ما اینطور نیستیم اگر در یک لیست نباشیم و
248
00:09:30,560 –> 00:09:33,200
دقیقاً در یک شی قرار نگیریم، این
249
00:09:33,200 –> 00:09:35,760
مورد اصلی در اینجا است و در آن نقطه من فکر می کنم که
250
00:09:35,760 –> 00:09:37,760
کاری که می خواهیم انجام دهیم این
251
00:09:37,760 –> 00:09:39,760
است که می خواهیم
252
00:09:39,760 –> 00:09:42,320
آن کلید را درست برداریم،
253
00:09:42,320 –> 00:09:44,480
این کلید مسطح است بیایید
254
00:09:44,480 –> 00:09:46,640
نام آن را تغییر
255
00:09:46,640 –> 00:09:48,880
دهیم که میخواهیم آن کلید را برداریم
256
00:09:48,880 –> 00:09:51,680
و آن را به شیء برگشتی خود اضافه کنیم، درست
257
00:09:51,680 –> 00:09:54,080
که مورد اصلی ما در اینجا است،
258
00:09:54,080 –> 00:09:56,640
بنابراین در آن نقطه میخواهیم
259
00:09:56,640 –> 00:09:57,680
260
00:09:57,680 –> 00:10:01,040
این کلید مسطح را تنظیم کنیم و میخواهیم آن را
261
00:10:01,040 –> 00:10:02,480
روی شیء بیرونی خود قرار دهیم
262
00:10:02,480 –> 00:10:06,959
، ببخشید قرمز ماست. شیء
263
00:10:06,959 –> 00:10:08,399
درست است
264
00:10:08,399 –> 00:10:10,480
و ما اساساً می خواهیم آن را به
265
00:10:10,480 –> 00:10:12,320
هر چیزی
266
00:10:12,320 –> 00:10:13,760
که در
267
00:10:13,760 –> 00:10:15,519
فراخوانی بازگشتی
268
00:10:15,519 –> 00:10:18,079
در آن هستیم تنظیم کنیم و در آن نقطه که x سمت راست خواهد بود
269
00:10:18,079 –> 00:10:20,959
، حالت پایه این است که x یک عدد صحیح یا
270
00:10:20,959 –> 00:10:22,079
یک رشته است،
271
00:10:22,079 –> 00:10:23,839
بنابراین ما فقط می خواهیم آن را برابر با
272
00:10:23,839 –> 00:10:26,399
x درست است، بنابراین این یک گزینه دیگر خواهد بود،
273
00:10:26,399 –> 00:10:27,839
زیرا ما چند if دیگر خواهیم داشت،
274
00:10:27,839 –> 00:10:30,000
اما من می خواهم در اینجا نظر بدهم،
275
00:10:30,000 –> 00:10:31,120
این
276
00:10:31,120 –> 00:10:33,760
x برابر است
277
00:10:33,760 –> 00:10:35,680
با یک
278
00:10:35,680 –> 00:10:37,600
عدد صحیح رشته
279
00:10:37,600 –> 00:10:40,640
vtc boolean هر چه
280
00:10:40,640 –> 00:10:41,680
درست باشد،
281
00:10:41,680 –> 00:10:43,920
بنابراین این یک نوع ماست در اینجا
282
00:10:43,920 –> 00:10:45,200
درست است،
283
00:10:45,200 –> 00:10:47,600
پس اگر
284
00:10:47,600 –> 00:10:49,839
یک شی یا لیست باشد، اگر اینطور نیست، چه می شود،
285
00:10:49,839 –> 00:10:52,880
پس بیایید بررسی کنیم اگر ابتدا یک لیست است،
286
00:10:52,880 –> 00:10:55,519
پس بیایید بگوییم که
287
00:10:55,519 –> 00:10:56,959
اگر نوع
288
00:10:56,959 –> 00:10:58,839
289
00:10:58,839 –> 00:11:02,959
x لیست است،
290
00:11:02,959 –> 00:11:04,800
چه کاری می
291
00:11:04,800 –> 00:11:07,040
خواهیم انجام دهیم، نمی خواهیم در آن مرحله
292
00:11:07,040 –> 00:11:09,120
درست تکرار کنیم، فقط می خواهیم این لیست را حلقه بزنیم
293
00:11:09,120 –> 00:11:12,640
و نمایه جایی که در آن هستیم را اضافه کنیم
294
00:11:12,640 –> 00:11:16,000
. فهرست به کلید،
295
00:11:16,000 –> 00:11:17,519
بنابراین در این مورد
296
00:11:17,519 –> 00:11:20,480
ما میتوانیم
297
00:11:20,480 –> 00:11:22,420
برای
298
00:11:22,420 –> 00:11:24,160
[Music]
299
00:11:24,160 –> 00:11:26,720
lm در x چیزی مانند um you know uh انجام دهیم،