در این مطلب، ویدئو پردازش رشته در پایتون: دنباله نگاه و گفتن با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,030 –> 00:00:01,949
بسیار خوب، در این ویدیو ما به دنباله
2
00:00:01,949 –> 00:00:03,959
به اصطلاح نگاه و گفتن نگاهی می اندازیم،
3
00:00:03,959 –> 00:00:06,240
بنابراین ما در حال تعریف کردن این
4
00:00:06,240 –> 00:00:07,980
دنباله ظاهر و گفتن هستیم،
5
00:00:07,980 –> 00:00:09,660
نشان خواهیم داد که چگونه خود توالی
6
00:00:09,660 –> 00:00:11,490
تولید می شود و سپس از شما می خواهیم
7
00:00:11,490 –> 00:00:13,710
این سوال در مورد نحوه تولید عبارت n
8
00:00:13,710 –> 00:00:15,540
در دنباله است و ما نگاهی
9
00:00:15,540 –> 00:00:17,130
خواهیم داشت به اینکه چگونه می توانیم آن مشکل را در پایتون کدنویسی کنیم،
10
00:00:17,130 –> 00:00:20,070
بنابراین بیایید جلوتر برویم و تعریف کنیم که
11
00:00:20,070 –> 00:00:22,800
دنباله look و say چیست، به طوری
12
00:00:22,800 –> 00:00:24,510
که دنباله نگاه و گفتن چگونه شروع می شود. خاموش این است
13
00:00:24,510 –> 00:00:26,609
که با عدد 1 شروع می شود و سپس
14
00:00:26,609 –> 00:00:27,810
به عددی که
15
00:00:27,810 –> 00:00:29,820
در این دنباله به ما داده شده است نگاه می کنیم و می گوییم
16
00:00:29,820 –> 00:00:31,980
چند عدد از این عدد وجود دارد، به
17
00:00:31,980 –> 00:00:35,309
عنوان مثال تا کنون یک عدد
18
00:00:35,309 –> 00:00:38,640
وجود دارد، پس یکی وجود دارد. بنابراین
19
00:00:38,640 –> 00:00:40,559
عبارت بعدی و دنباله
20
00:00:40,559 –> 00:00:42,780
از نظر آوایی توسط آن تولید می شود و ما
21
00:00:42,780 –> 00:00:45,899
عبارت 1 1 را داریم، بنابراین عبارت بعدی را
22
00:00:45,899 –> 00:00:47,430
در دنباله به دست می دهیم
23
00:00:47,430 –> 00:00:49,829
24
00:00:49,829 –> 00:00:52,469
25
00:00:52,469 –> 00:00:54,870
. واضح است بنابراین دوباره عبارت اول
26
00:00:54,870 –> 00:00:58,230
1 t دوم را داریم erm 1 1 بنابراین برای تولید
27
00:00:58,230 –> 00:00:59,940
عبارت بعدی در دنباله، نگاه خواهیم کرد
28
00:00:59,940 –> 00:01:01,920
که چند عبارت از این
29
00:01:01,920 –> 00:01:04,530
وجود دارد، بنابراین دو عبارت وجود دارد، بنابراین در آن صورت ما
30
00:01:04,530 –> 00:01:07,890
2 1 خواهیم داشت، بنابراین دوباره برای تولید عبارت بعدی
31
00:01:07,890 –> 00:01:11,040
اکنون می گوییم آنجا هستند 1 2
32
00:01:11,040 –> 00:01:15,869
و 1 1 پس 1 2 1 1 وجود دارد پس بیایید
33
00:01:15,869 –> 00:01:18,420
ادامه دهیم تا عبارت بعدی با
34
00:01:18,420 –> 00:01:21,750
نگاه کردن به این و گفتن 1 1 1
35
00:01:21,750 –> 00:01:29,880
2 2 1 پس 1 1 1 2 و سپس 2 1 ایجاد می شود و فقط
36
00:01:29,880 –> 00:01:32,310
برای ادامه دادن به آنجا سه یکی هستند بنابراین 3
37
00:01:32,310 –> 00:01:36,540
1 2 دو و سپس 1 1 بنابراین این
38
00:01:36,540 –> 00:01:38,490
1 1 نهایی است، بنابراین به همین روش ادامه می
39
00:01:38,490 –> 00:01:40,439
دهد، بنابراین اگر می خواهید
40
00:01:40,439 –> 00:01:42,329
اطلاعات بیشتری در مورد این دنباله خاص
41
00:01:42,329 –> 00:01:43,890
داشته باشید، اگر کنجکاو هستید، یک
42
00:01:43,890 –> 00:01:46,380
صفحه ویکی پدیا نیز برای اطلاعات بیشتر وجود دارد.
43
00:01:46,380 –> 00:01:48,240
در مورد نحوه تعریف دنباله و
44
00:01:48,240 –> 00:01:50,130
برخی خصوصیات دیگر که دنباله
45
00:01:50,130 –> 00:01:52,110
دارد، بنابراین
46
00:01:52,110 –> 00:01:53,670
47
00:01:53,670 –> 00:01:56,009
اگر به بیان مشکلی
48
00:01:56,009 –> 00:01:58,140
که در این ویدیو روی آن تمرکز خواهیم کرد، در توضیحات زیر
49
00:01:58,140 –> 00:02:00,030
به این ویدیو نیز لینک خواهم داد. آیا به ما یک
50
00:02:00,030 –> 00:02:02,369
عدد صحیح داده شده است و می خواهیم جمله
51
00:02:02,369 –> 00:02:04,320
n و ظاهر را تعیین کنیم و دنباله
52
00:02:04,320 –> 00:02:06,270
آن را بگوییم به عنوان مثال کسی به ما
53
00:02:06,270 –> 00:02:08,610
عدد صحیح n برابر با 4 می دهد، ما می خواستیم
54
00:02:08,610 –> 00:02:10,110
جمله چهارم و
55
00:02:10,110 –> 00:02:11,970
دنباله را تعیین کنیم و دنباله را بگوییم و در این صورت
56
00:02:11,970 –> 00:02:13,380
آن جمله 1 2
57
00:02:13,380 –> 00:02:15,990
یک است زیرا اگر دنباله را داشته باشیم و
58
00:02:15,990 –> 00:02:17,880
بگوییم اینجا اولین جمله است. دوم
59
00:02:17,880 –> 00:02:20,430
سوم چهارم این چهارمین عبارت در
60
00:02:20,430 –> 00:02:21,780
آن دنباله است و آن عبارتی است که
61
00:02:21,780 –> 00:02:23,430
میخواهیم با عدد صحیح تولید کنیم
62
00:02:23,430 –> 00:02:25,680
و برابر با چهار است، بنابراین ما ادامه میدهیم
63
00:02:25,680 –> 00:02:27,840
و این راهحل را در
64
00:02:27,840 –> 00:02:31,770
پایتون کدنویسی میکنیم، پس من میروم ادامه دهید
65
00:02:31,770 –> 00:02:34,050
و یک ویرایشگر متن خالی را در اینجا باز کنید و
66
00:02:34,050 –> 00:02:35,790
ما ادامه می دهیم و این مشکل را حل می
67
00:02:35,790 –> 00:02:37,410
کنیم، بنابراین راهی که می خواهیم
68
00:02:37,410 –> 00:02:38,730
این مشکل را حل کنیم این است که
69
00:02:38,730 –> 00:02:40,260
مشکل را به
70
00:02:40,260 –> 00:02:42,420
دو تابع تقسیم می کنیم.
71
00:02:42,420 –> 00:02:44,640
مسئول تولید عبارت بعدی
72
00:02:44,640 –> 00:02:46,410
در دنباله ای که یک عبارت در
73
00:02:46,410 –> 00:02:48,270
دنباله داده شده است، بنابراین برای مثال
74
00:02:48,270 –> 00:02:50,460
اگر به ما داده شد به اسلایدها برگردیم، بیایید
75
00:02:50,460 –> 00:02:53,190
این عدد را در اینجا بگوییم این دنباله
76
00:02:53,190 –> 00:02:55,470
که در مورد ما به عنوان یک رشته تفسیر می شود
77
00:02:55,470 –> 00:02:57,750
اگر ما داریم با توجه به این یکی در اینجا و سپس
78
00:02:57,750 –> 00:02:59,280
تابع یون فقط مسئول
79
00:02:59,280 –> 00:03:01,770
تولید عبارت بعدی در دنباله خواهد بود، به
80
00:03:01,770 –> 00:03:03,840
همین ترتیب اگر این عبارت را به عنوان یک
81
00:03:03,840 –> 00:03:05,730
رشته به ما داده شود، تابع ما فقط
82
00:03:05,730 –> 00:03:08,220
مسئول برگرداندن عبارت بعدی
83
00:03:08,220 –> 00:03:10,470
در دنباله خواهد بود، بنابراین فقط هر یک
84
00:03:10,470 –> 00:03:13,380
از این عناصر را یک به یک به عنوان یک پردازش می کند. رشته
85
00:03:13,380 –> 00:03:15,300
و سپس
86
00:03:15,300 –> 00:03:17,040
عبارت بعدی و دنباله نگاه و گفتن را
87
00:03:17,040 –> 00:03:20,210
توسط الگوریتمی تعیین می کند که ما
88
00:03:20,210 –> 00:03:22,320
به صورت کاملاً موضعی به روشی که دنباله را تولید کردیم، مرور کردیم
89
00:03:22,320 –> 00:03:24,840
و سپس کاری که
90
00:03:24,840 –> 00:03:26,100
ما انجام خواهیم داد این است که آن تابع را به هر تعداد که باشد می نامیم.
91
00:03:26,100 –> 00:03:27,990
بارهایی که
92
00:03:27,990 –> 00:03:30,300
برای تولید ترم n نیاز داریم، این یک
93
00:03:30,300 –> 00:03:31,350
نوع رویکرد است و ما میخواهیم
94
00:03:31,350 –> 00:03:33,570
ادامه دهیم و اولین
95
00:03:33,570 –> 00:03:36,110
تابع را بنویسیم، بنابراین آن تابع را
96
00:03:36,110 –> 00:03:39,750
شماره بعدی صدا میزنیم و این تابع عدد بعدی
97
00:03:39,750 –> 00:03:41,460
را خواهد گرفت. یک رشته بنابراین
98
00:03:41,460 –> 00:03:42,900
دوباره رشته
99
00:03:42,900 –> 00:03:44,820
دنباله ای از ارقام خواهد بود که با
100
00:03:44,820 –> 00:03:46,680
آن عبارت مطابقت دارد در دنباله ای که ما به آن اهمیت
101
00:03:46,680 –> 00:03:48,030
می دهیم، فرض می کنیم
102
00:03:48,030 –> 00:03:50,250
که به عنوان یک رشته به ما داده شده است و می خواهیم
103
00:03:50,250 –> 00:03:52,380
پیش برویم و دو را تعریف کنیم. متغیر
104
00:03:52,380 –> 00:03:53,760
ما جلوی این تابع را مقداردهی اولیه می
105
00:03:53,760 –> 00:03:55,680
کنیم، بنابراین نتیجه ای را می گوییم
106
00:03:55,680 –> 00:03:57,480
که در ابتدا برابر با یک
107
00:03:57,480 –> 00:04:00,240
لیست خالی خواهد بود
108
00:04:00,240 –> 00:04:03,240
109
00:04:03,240 –> 00:04:04,620
. همچنین
110
00:04:04,620 –> 00:04:07,320
یک متغیر I برابر با صفر تعریف می کنم،
111
00:04:07,320 –> 00:04:09,420
این عبارت یک تکرار کننده خواهد بود که
112
00:04:09,420 –> 00:04:12,120
به ما امکان می دهد یک به یک از طریق
113
00:04:12,120 –> 00:04:13,530
دنباله ای که به آن می رسیم از
114
00:04:13,530 –> 00:04:15,240
طریق عبارتی که به ما داده شده است حرکت کنیم، بنابراین
115
00:04:15,240 –> 00:04:17,430
یک عبارت به ما داده می شود. رشتهای که میخواهیم
116
00:04:17,430 –> 00:04:19,260
هر یک از آن اعداد را بهطور مستقل پردازش
117
00:04:19,260 –> 00:04:21,000
کنیم، همانطور که از آن رشته میگذریم، میخواهیم
118
00:04:21,000 –> 00:04:22,560
تعداد دفعاتی که با یک
119
00:04:22,560 –> 00:04:24,360
عدد خاص مواجه شده است را پیگیری کنیم و میخواهیم
120
00:04:24,360 –> 00:04:26,790
121
00:04:26,790 –> 00:04:28,260
تعداد دفعاتی که این اتفاق افتاده است را پیگیری کنیم، زیرا
122
00:04:28,260 –> 00:04:29,820
این چگونه
123
00:04:29,820 –> 00:04:32,310
عبارت بعدی را در دنباله تولید می کنیم، بنابراین کاری که می
124
00:04:32,310 –> 00:04:33,510
خواهیم انجام دهیم این است که
125
00:04:33,510 –> 00:04:35,490
ابتدا دو حلقه داشته باشیم، حلقه اول
126
00:04:35,490 –> 00:04:37,500
یک به یک از طریق هر یک از
127
00:04:37,500 –> 00:04:38,880
اعداد در رشته حرکت می کند. به ما داده شده است،
128
00:04:38,880 –> 00:04:41,700
بنابراین ما می خواهیم بگوییم در حالی که من کمتر
129
00:04:41,700 –> 00:04:45,120
از یک لنز هستم gth از s و سپس کاری که
130
00:04:45,120 –> 00:04:46,140
میخواهیم انجام دهیم این است که یک
131
00:04:46,140 –> 00:04:48,180
متغیر شمارش تعریف میکنیم که ابتدا آن را
132
00:04:48,180 –> 00:04:50,970
برابر یک قرار میدهیم و همانطور که در
133
00:04:50,970 –> 00:04:53,640
دنباله حرکت میکنیم کاری که انجام میدهیم این است که شروع میکنیم.
134
00:04:53,640 –> 00:04:55,050
در اینجا فرض کنید
135
00:04:55,050 –> 00:04:57,240
ما این دنباله را در اینجا به عنوان یک رشته به
136
00:04:57,240 –> 00:04:59,760
ما داده اند و می خواهیم عبارت بعدی
137
00:04:59,760 –> 00:05:01,590
دنباله را در اینجا ایجاد کنیم، بنابراین کاری که انجام می دهیم این
138
00:05:01,590 –> 00:05:03,210
است که هر یک از این ها را جداگانه پردازش می
139
00:05:03,210 –> 00:05:06,540
کنیم و می گوییم خوب است. در اینجا چند مورد از
140
00:05:06,540 –> 00:05:08,010
اینها وجود دارد، ما می دانیم که حداقل یکی وجود دارد،
141
00:05:08,010 –> 00:05:12,090
بنابراین بررسی می کنیم که آیا این و این
142
00:05:12,090 –> 00:05:13,830
یکی دقیقاً در کنار آن هستند، اگر آنها یکسان هستند،
143
00:05:13,830 –> 00:05:15,690
بنابراین اگر آنها یکسان هستند
144
00:05:15,690 –> 00:05:17,610
حداقل تعدادی از آنها را داریم بیش از یکی از
145
00:05:17,610 –> 00:05:19,530
هر اصطلاحی که اتفاقاً در آن قرار داریم، بنابراین به
146
00:05:19,530 –> 00:05:21,840
نظر میرسد که تا کنون فقط یک مورد
147
00:05:21,840 –> 00:05:23,460
داریم، بنابراین توجه داشته باشیم که به
148
00:05:23,460 –> 00:05:26,520
دوره بعدی میرویم تا در دو هستیم، بررسی کنیم که آیا
149
00:05:26,520 –> 00:05:28,770
این یکی و بعدی برابر
150
00:05:28,770 –> 00:05:31,020
هستند، بنابراین ما ادامه می دهیم، آن را یادداشت می
151
00:05:31,020 –> 00:05:33,090
کنیم و سپس در اینجا هستیم،
152
00:05:33,090 –> 00:05:35,940
بنابراین این نهایی یا این سومی، بنابراین
153
00:05:35,940 –> 00:05:37,740
بررسی می کنیم که آیا این یکی و دیگری برابر هستند
154
00:05:37,740 –> 00:05:39,840
در این مورد چنین است، بنابراین
155
00:05:39,840 –> 00:05:41,550
مطمئن می شویم که متغیر تعداد خود را افزایش می دهیم
156
00:05:41,550 –> 00:05:43,590
زیرا با دو متغیر مواجه
157
00:05:43,590 –> 00:05:45,330
ش