در این مطلب، ویدئو پایتون – سخنرانی 2 – برنامه نویسی وب CS50 با پایتون و جاوا اسکریپت 2020 با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 1:07:41
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,560 –> 00:00:13,950
[موسیقی]
2
00:00:13,950 –> 00:00:16,010
شما به
3
00:00:17,300 –> 00:00:19,849
همه خوش آمدید همه را به
4
00:00:19,849 –> 00:00:21,289
برنامه نویسی وب با پایتون و جاوا اسکریپت برگردانید
5
00:00:21,289 –> 00:00:23,539
و امروز نگاهی به یکی از
6
00:00:23,539 –> 00:00:24,949
دو زبان اصلی
7
00:00:24,949 –> 00:00:26,750
که در این دوره
8
00:00:26,750 –> 00:00:28,070
خواهیم داشت می اندازیم. Python
9
00:00:28,070 –> 00:00:30,590
Python یک زبان بسیار قدرتمند است که
10
00:00:30,590 –> 00:00:32,899
ساخت سریع برنامه ها را بسیار آسان می
11
00:00:32,899 –> 00:00:34,430
کند زیرا
12
00:00:34,430 –> 00:00:35,690
ویژگی های زیادی در
13
00:00:35,690 –> 00:00:37,280
زبان تعبیه شده است که آن را
14
00:00:37,280 –> 00:00:39,470
برای توسعه سریع و سازنده راحت می کند بنابراین
15
00:00:39,470 –> 00:00:41,210
یکی از اهداف امروزی
16
00:00:41,210 –> 00:00:42,829
معرفی شماست. به زبان برنامه نویسی پایتون
17
00:00:42,829 –> 00:00:44,120
اگر قبلاً آن را ندیده اید
18
00:00:44,120 –> 00:00:46,640
و حتی اگر قبلاً آن را دیده اید، به زبان برنامه
19
00:00:46,640 –> 00:00:47,989
نویسی پایتون بپردازید
20
00:00:47,989 –> 00:00:48,860
تا بتوانید ویژگی های
21
00:00:48,860 –> 00:00:50,239
پیشرفته تر
22
00:00:50,239 –> 00:00:51,829
و برخی از تکنیک هایی که ما
23
00:00:51,829 –> 00:00:54,050
می توانیم با استفاده از پایتون استفاده کنیم را بشناسید. برای اینکه بتوانیم
24
00:00:54,050 –> 00:00:55,820
برنامه ها را به
25
00:00:55,820 –> 00:00:58,309
طور موثرتری توسعه دهیم، بنابراین با
26
00:00:58,309 –> 00:01:00,559
اولین برنامه پایتون خود شروع می کنیم، فقط برنامه ای که
27
00:01:00,559 –> 00:01:02,149
می گوید سلام دنیا، ما
28
00:01:02,149 –> 00:01:04,069
آن را در یک فایل متنی و
29
00:01:04,069 –> 00:01:05,539
برنامه j می نویسیم. ust مانند یک خط به نظر می
30
00:01:05,539 –> 00:01:08,030
رسد و اگر قبلاً از
31
00:01:08,030 –> 00:01:09,830
زبان های برنامه نویسی دیگری مانند C یا
32
00:01:09,830 –> 00:01:11,960
جاوا یا زبان های دیگر استفاده کرده اید، این احتمالاً از
33
00:01:11,960 –> 00:01:14,240
نظر نحو بسیار آشنا به نظر می رسد، اما
34
00:01:14,240 –> 00:01:16,130
فقط برای تجزیه آن، ما تابعی
35
00:01:16,130 –> 00:01:18,140
به نام چاپ داریم که در
36
00:01:18,140 –> 00:01:20,060
برنامه نویسی پایتون تعبیه شده است. زبان برای ما و مانند
37
00:01:20,060 –> 00:01:21,380
بسیاری از زبان های برنامه نویسی دیگر،
38
00:01:21,380 –> 00:01:24,020
توابع در پایتون آرگومان های خود را
39
00:01:24,020 –> 00:01:26,390
در داخل پرانتز قرار می دهند، بنابراین در داخل این
40
00:01:26,390 –> 00:01:28,640
پرانتز، آرگومان یا
41
00:01:28,640 –> 00:01:30,770
ورودی تابع چاپ قرار دارد که در
42
00:01:30,770 –> 00:01:32,590
این مورد فقط کلمات hello world به
43
00:01:32,590 –> 00:01:35,660
دنبال علامت تعجب است، بنابراین
44
00:01:35,660 –> 00:01:36,950
در اینجا چگونه می توانیم واقعاً این برنامه را بگیریم
45
00:01:36,950 –> 00:01:39,229
و آن را اجرا کنیم، من به
46
00:01:39,229 –> 00:01:41,090
ویرایشگر متن خود می روم و یک فایل جدید ایجاد
47
00:01:41,090 –> 00:01:45,470
می کنم که آن را hello dot P Y dot py یا
48
00:01:45,470 –> 00:01:47,929
dot pi پسوند معمولی برای
49
00:01:47,929 –> 00:01:50,420
برنامه های پایتون است، بنابراین من ایجاد خواهم کرد. فایلی
50
00:01:50,420 –> 00:01:53,000
به نام hello dot PI که داخل آن
51
00:01:53,000 –> 00:01:54,920
فقط کد پایتون خواهد بود که چند
52
00:01:54,920 –> 00:01:55,580
لحظه پیش
53
00:01:55,580 –> 00:01:57,979
دیدیم تابع print و به عنوان
54
00:01:57,979 –> 00:01:59,629
آرگومان یا ورودی تابع چاپ
55
00:01:59,629 –> 00:02:02,479
I’
56
00:02:02,479 –> 00:02:06,440
برای اجرای
57
00:02:06,440 –> 00:02:08,300
این برنامه از
58
00:02:08,300 –> 00:02:10,369
برنامه ای در ترمینال خود استفاده می کنیم که
59
00:02:10,369 –> 00:02:12,800
به طور اتفاقی Python Python نامیده
60
00:02:12,800 –> 00:02:14,750
61
00:02:14,750 –> 00:02:16,129
می شود.
62
00:02:16,129 –> 00:02:18,200
برنامه ای به نام Python
63
00:02:18,200 –> 00:02:19,879
که مفسری است که می خواهد
64
00:02:19,879 –> 00:02:22,700
فایل نقطه PI ما را خط به خط بخواند و هر
65
00:02:22,700 –> 00:02:24,379
خط را اجرا کند و آنچه را که هست تفسیر کند به
66
00:02:24,379 –> 00:02:26,270
این معناست که کامپیوتر
67
00:02:26,270 –> 00:02:28,250
واقعاً بتواند آن را بفهمد، بنابراین ما پایتون را به دنبال آن اجرا می کنیم.
68
00:02:28,250 –> 00:02:30,380
با نام برنامه ای که
69
00:02:30,380 –> 00:02:30,710
می خواهیم
70
00:02:30,710 –> 00:02:32,870
در این مورد hello depay را تفسیر کنیم و
71
00:02:32,870 –> 00:02:35,300
وقتی این برنامه را اجرا می کنیم می بینیم که
72
00:02:35,300 –> 00:02:37,250
کلمات hello world در ترمینال چاپ می
73
00:02:37,250 –> 00:02:39,710
شود و همین که
74
00:02:39,710 –> 00:02:40,700
پایان برنامه است و این اولین
75
00:02:40,700 –> 00:02:42,920
برنامه است. که ما با استفاده از
76
00:02:42,920 –> 00:02:44,990
زبان برنامهنویسی پایتون نوشتهایم، بنابراین اکنون
77
00:02:44,990 –> 00:02:46,310
چند
78
00:02:46,310 –> 00:02:48,230
ویژگی پایتون را دیدهایم که توانایی تفسیر
79
00:02:48,230 –> 00:02:50,090
پایتون را دارد، برای اجرای یک برنامه پایتون که دیدهایم، نیازی به کامپایل کردن آن
80
00:02:50,090 –> 00:02:51,980
در یک باینری نیست.
81
00:02:51,980 –> 00:02:54,170
توابع
82
00:02:54,170 –> 00:02:57,050
و همچنین رشتههایی را دیدهایم که فقط متنی هستند که
83
00:02:57,050 –> 00:02:58,730
میتوانیم آنها را در علامت نقل قول ارائه
84
00:02:58,730 –> 00:03:00,440
کنیم که میتوانیم به عنوان ورودی برای توابع دیگر ارائه دهیم
85
00:03:00,440 –> 00:03:02,630
یا به روشهای دیگر دستکاری
86
00:03:02,630 –> 00:03:04,580
کنیم و نمونههایی از
87
00:03:04,580 –> 00:03:07,250
دستکاری رشتهها را کمی بعدتر مانند
88
00:03:07,250 –> 00:03:09,200
بسیاری از زبانهای برنامهنویسی دیگر خواهیم دید. پایتون
89
00:03:09,200 –> 00:03:11,660
همچنین از متغیرها پشتیبانی می کند و برای
90
00:03:11,660 –> 00:03:13,700
اختصاص دادن یک مقدار جدید به یک متغیر،
91
00:03:13,700 –> 00:03:15,080
92
00:03:15,080 –> 00:03:17,810
اگر خطی مانند 28 داشته باشم، سینتکس کمی شبیه به
93
00:03:17,810 –> 00:03:19,700
94
00:03:19,700 –> 00:03:22,550
95
00:03:22,550 –> 00:03:25,880
این است. متغیر now نامیده می شود بر خلاف
96
00:03:25,880 –> 00:03:27,950
زبان های دیگر مانند C یا جاوا که
97
00:03:27,950 –> 00:03:29,360
ممکن است با آن آشنا باشید که در آن
98
00:03:29,360 –> 00:03:31,310
باید نوع هر متغیری را که
99
00:03:31,310 –> 00:03:33,890
ایجاد می کنید مشخص کنید باید بگوییم int a به این معنی که
100
00:03:33,890 –> 00:03:36,500
a یک عدد صحیح است پایتون نیازی
101
00:03:36,500 –> 00:03:38,390
به گفتن آن ندارد. انواع هر یک از
102
00:03:38,390 –> 00:03:40,670
این متغیرها در واقع چه هستند، بنابراین ما فقط می توانیم
103
00:03:40,670 –> 00:03:42,740
بگوییم مساوی 28 است و پایتون می داند
104
00:03:42,740 –> 00:03:45,080
که چون این عدد یک int
105
00:03:45,080 –> 00:03:46,970
است که بدون
106
00:03:46,970 –> 00:03:49,190
متغیر a به عنوان int نمایش داده می شود و آن را می داند.
107
00:03:49,190 –> 00:03:51,620
میتواند انواع هر یک از
108
00:03:51,620 –> 00:03:54,290
این مقادیر را استنباط کند، بنابراین همه
109
00:03:54,290 –> 00:03:55,940
مقادیر واقعاً دارای انواع هستند،
110
00:03:55,940 –> 00:03:57,980
فقط نیازی به بیان صریح
111
00:03:57,980 –> 00:03:59,870
آنها نیست، بنابراین برای مثال، عدد
112
00:03:59,870 –> 00:04:02,090
28 در اینجا از نوع int است، یک عدد صحیح یک
113
00:04:02,090 –> 00:04:04,940
عدد است. مانند 1.5 یک عدد اعشاری در آن وجود دارد، این
114
00:04:04,940 –> 00:04:06,800
یک عدد ممیز شناور است، بنابراین در
115
00:04:06,800 –> 00:04:08,330
پایتون چیزی است که ما میتوانیم آن را نوع شناور بنامیم
116
00:04:08,330 –> 00:04:11,030
هر نوع متنی، چیزی مانند
117
00:04:11,030 –> 00:04:12,980
کلمه hello که در دو
118
00:04:12,980 –> 00:04:14,600
گیومه یا علامت نقل قول تکی پیچیده شده است.
119
00:04:14,600 –> 00:04:16,970
پایتون از هر دو پشتیبانی میکند.
120
00:04:16,970 –> 00:04:18,890
نوع ster را کوتاه برای
121
00:04:18,890 –> 00:04:21,140
رشته می نامیم، ما همچنین یک نوع برای
122
00:04:21,140 –> 00:04:22,880
مقادیر بولی داریم که می توانند
123
00:04:22,880 –> 00:04:25,640
در پایتون درست یا نادرست باشند، این موارد
124
00:04:25,640 –> 00:04:28,430
با استفاده از T بزرگ واقعی و F بزرگ F
125
00:04:28,430 –> 00:04:32,420
false نشان داده می شوند که از نوع bool هستند و همچنین
126
00:04:32,420 –> 00:04:34,250
ما یک خاص داریم. در پایتون نوع none نامیده می شود
127
00:04:34,250 –> 00:04:36,410
که فقط یک
128
00:04:36,410 –> 00:04:39,230
مقدار ممکن دارد این سرمایه n هیچ و هیچ به عنوان
129
00:04:39,230 –> 00:04:41,180
مقدار هر زمان که
130
00:04:41,180 –> 00:04:43,580
بخواهیم فقدان مقداری را در جایی نشان
131
00:04:43,580 –> 00:04:44,689
دهیم از آن استفاده خواهیم کرد بنابراین اگر تابعی داشته
132
00:04:44,689 –> 00:04:46,580
باشیم که اگر چیزی را برگرداند من
133
00:04:46,580 –> 00:04:49,099
واقعاً هیچ کدام را به طور مؤثر برمی گرداند و
134
00:04:49,099 –> 00:04:50,299
بنابراین ممکن است تصور کنید که هیچ کدام نمی تواند
135
00:04:50,299 –> 00:04:52,399
مفید باشد اگر بخواهید متغیری برای
136
00:04:52,399 –> 00:04:54,529
نشان دادن عدم وجود چیزی برای
137
00:04:54,529 –> 00:04:56,449
مثال تعداد زیادی از انواع مختلف ممکن
138
00:04:56,449 –> 00:04:57,919
و انواع بیشتری فقط در
139
00:04:57,919 –> 00:04:59,929
این مورد وجود دارد، اما در اینجا نمونه ای از موارد
140
00:04:59,929 –> 00:05:02,029
ممکن است. متغیرها و انواعی که ممکن
141
00:05:02,029 –> 00:05:05,029
است در داخل این زبان وجود داشته باشد، بنابراین اکنون
142
00:05:05,029 –> 00:05:07,639
بیایید سعی کنیم و در واقع از یک متغیر استفاده کنیم
143
00:05:07,639 –> 00:05:09,139
تا کاری کمی
144
00:05:09,139 –> 00:05:11,059
جالبتر در داخل برنامه خود انجام دهیم و
145
00:05:11,059 –> 00:05:12,589
برنامهای مینویسیم که بتواند به
146
00:05:12,589 –> 00:05:15,679
ترتیب ورودی از کاربر بگیرد. برای
147
00:05:15,679 –> 00:05:17,899
سلام کردن به آنها به عنوان مثال، بنابراین من
148
00:05:17,899 –> 00:05:22,089
یک فایل جدید ایجاد می کنم که آن را به نام نقطه PI صدا می کنیم و
149
00:05:22,089 –> 00:05:24,739
برای شروع، می خواهم از کاربر برای
150
00:05:24,739 –> 00:05:25,099
ورودی درخواست
151
00:05:25,099 –> 00:05:26,599
کنم، می خواهم از کاربر بخواهم که
152
00:05:26,599 –> 00:05:29,809
مثلاً آن را تایپ کند. بنابراین چگونه
153
00:05:29,809 –> 00:05:32,179
میتوانیم این کار را به خوبی انجام دهیم، همانطور که یک
154
00:05:32,179 –> 00:05:34,459
تابع چاپی وجود دارد که در پایتون تعبیه شده است که
155
00:05:34,459 –> 00:05:36,319
فقط هر آرگومان
156
00:05:36,319 –> 00:05:38,689
را که پایتون باشد چاپ میکند، همچنین یک
157
00:05:38,689 –> 00:05:41,209
تابع داخلی به نام ورودی دارد که از
158
00:05:41,209 –> 00:05:42,860
کاربر درخواست ورودی میکند و از آنها میخواهد که فقط
159
00:05:42,860 –> 00:05:45,110
مقداری ورودی را تایپ کنید، بنابراین اجازه دهید مقداری ورودی ارائه دهیم
160
00:05:45,110 –> 00:05:48,469
و از کاربر بخواهیم که نام خود
161
00:05:48,469 –> 00:05:51,529
را تایپ کند و سپس ما می توانیم
162
00:05:51,529 –> 00:05:53,389
نتیجه خروجی آن تابع را
163
00:05:53,389 –> 00:05:55,579
در داخل یک متغیر ذخیره کنیم و در این صورت
164
00:05:55,579 –> 00:05:57,079
من آن را در داخل یک متغیر ذخیره می کنم. که
165
00:05:57,079 –> 00:05:58,939
در این مورد نیز اتفاقاً
166
00:05:58,939 –> 00:06:02,059
نام نامیده میشود، اکنون میتوانیم برنامه را اجرا کنیم،
167
00:06:02,059 –> 00:06:03,829
میتوانم برنامه را با رفتن به
168
00:06:03,829 –> 00:06:06,979
ترمینال و تایپ پایتون به نام i اجرا کنیم،
169
00:06:06,979 –> 00:06:09,319
بازگشت را فشار میدهم و میبینیم که برنامه
170
00:06:09,319 –> 00:06:11,659
از من میخواهد تایپم را انجام دهم. name من فضای کولون نام را می بینم
171
00:06:11,659 –> 00:06:13,969
که رشته ای است
172
00:06:13,969 –> 00:06:16,009
که به عنوان آرگومان تابع ورودی ارائه کرده ام
173
00:06:16,009 –> 00:06:18,139
و اکنون از
174
00:06:18,139 –> 00:06:19,189
من می خواهد تا نام خود را تایپ کنم تا این کار را انجام دهم
175
00:06:19,189 –> 00:06:21,649
و بعد از آن به نظر می رسد هیچ اتفاقی
176
00:06:21,649 –> 00:06:24,409
تا کنون رخ نداده است، بنابراین اکنون می خواهم کاری انجام دهم
177
00:06:24,409 –> 00:06:26,119
با این ورودی که نامم را تایپ کردم،
178
00:06:26,119 –> 00:06:28,369
میخواهم مثلاً به
179
00:06:28,369 –> 00:06:30,919
خودم سلام کنم، بنابراین به این برنامه برمیگردم
180
00:06:30,919 –> 00:06:33,739
و حالا کاری که میتوانم انجام دهم این است که میتوانم بگویم
181
00:06:33,739 –> 00:06:38,899
کاما hello را چاپ کنید و سپس میتوانم بگویم به علاوه نام
182
00:06:38,899 –> 00:06:41,300
این را بگذارم.
183
00:06:41,300 –> 00:06:42,889
اگر دو عدد t داشته باشم، اپراتور plus در پایتون کارهای مختلفی انجام می دهد
184
00:06:42,889 –> 00:06:44,089
hat این دو عدد را
185
00:06:44,089 –> 00:06:46,819
با هم جمع میکند اما با دو رشته بعلاوه میتواند
186
00:06:46,819 –> 00:06:49,279
در واقع دو
187
00:06:49,279 –> 00:06:51,409
رشته را به هم متصل کند یا ترکیب کند، بنابراین من میتوانم
188
00:06:51,409 –> 00:06:53,659
فضای hello کاما را با هر مقداری که مقدار
189
00:06:53,659 –> 00:06:56,869
نام اتفاق میافتد ترکیب کنم، بنابراین اکنون
190
00:06:56,869 –> 00:06:58,129
این برنامه را با
191
00:06:58,129 –> 00:07:03,439
نام Python به نام نوع PI در من دوباره اجرا میکنم. نام و اکنون
192
00:07:03,439 –> 00:07:05,899
ما hello Brian را به عنوان خروجی برنامه می بینیم،
193
00:07:05,899 –> 00:07:09,199
بنابراین این یکی از راه هایی است که می توانید
194
00:07:09,199 –> 00:07:12,289
رشته ها را در پایتون دستکاری کنید، روش دیگری
195
00:07:12,289 –> 00:07:14,029
که در نسخه
196
00:07:14,029 –> 00:07:16,369
های بعدی پایتون 3 بسیار رایج است، روشی است که به نام استفاده از
197
00:07:16,369 –> 00:07:18,800
رشته های f کوتاه برای رشته های فرمت شده شناخته می شود
198
00:07:18,800 –> 00:07:21,139
. به منظور استفاده از رشته های f در پایتون،
199
00:07:21,139 –> 00:07:22,429
به
200
00:07:22,429 –> 00:07:25,039
جای اینکه فقط
201
00:07:25,039 –> 00:07:27,830
یک رشته در دو علامت کوتیشن داشته باشیم،
202
00:07:27,830 –> 00:07:30,699
یک نحو مشابه اما کمی متفاوت خواهد بود، حرف F را قبل از رشته قرار می دهیم و
203
00:07:30,699 –> 00:07:33,379
در داخل رشته، اکنون می توانم
204
00:07:33,379 –> 00:07:35,689
با ویرگول سلام بگویم و سپس اگر در یک رشته فرمت شده است،
205
00:07:35,689 –> 00:07:38,089
اگر بخواهم مقدار
206
00:07:38,089 –> 00:07:40,580
متغیری را وصل کنم، میتوانم این کار را با مشخص کردن آن در
207
00:07:40,580 –> 00:07:43,519
پرانتزهای فرفری انجام دهم، بنابراین آنچه در اینجا میگویم
208
00:07:43,519 –> 00:07:47,509
داخل نام پرانتزهای فر باشد و بنابراین
209
00:07:47,509 –> 00:07:49,279
آنچه در اینجا میگذرد این است که من تلفن هستم.
210
00:07:49,279 –> 00:07:51,439
این رشته فرمت شده را برای
211
00:07:51,439 –> 00:07:53,719
جایگزین کردن مقدار یک متغیر در
212
00:07:53,719 –> 00:07:55,459
اینجا بفرستید، بنابراین من از کاربر خواستم تا ورودی را به نام خود تایپ کند،
213
00:07:55,459 –> 00:07:57,679
نام او
214
00:07:57,679 –> 00:07:59,809
را در داخل این متغیر به نام name ذخیره کردیم
215
00:07:59,809 –> 00:08:02,059
و اکنون در اینجا در این عبارت چاپی در
216
00:08:02,059 –> 00:08:04,279
خط دو I’m چاپ کردن یک رشته فرمت شده
217
00:08:04,279 –> 00:08:07,519
که کاما hello است و سپس در
218
00:08:07,519 –> 00:08:10,039
پرانتزهای فرفری در اینجا میگویم
219
00:08:10,039 –> 00:08:12,709
مقدار نام متغیر را وصل کنید و
220
00:08:12,709 –> 00:08:13,759
این باعث میشود
221
00:08:13,759 –> 00:08:15,800
هر نامی که ارائه شده است را به عنوان ورودی
222
00:08:15,800 –> 00:08:17,959
بگیرید و آن را چاپ کنید و این کار را انجام دهید. یک روش کمی
223
00:08:17,959 –> 00:08:19,879
کارآمدتر برای
224
00:08:19,879 –> 00:08:22,189
ایجاد سریع رشته ها است، زیرا با وصل کردن
225
00:08:22,189 –> 00:08:24,740
مقادیر به آن رشته ها، اکنون
226
00:08:24,740 –> 00:08:26,749
دقیقاً همان رفتار را می بینم اگر
227
00:08:26,749 –> 00:08:30,409
Python name pi را اجرا کنم و سپس از شما خواسته شود
228
00:08:30,409 –> 00:08:33,380
که نام خود را تایپ کنم من مانند برایان هستم و سپس
229
00:08:33,380 –> 00:08:35,659
نتیجه را به عنوان مثال سلام برایان ذخیره میکنم و
230
00:08:35,659 –> 00:08:37,458
بنابراین اینها چند راه هستند که
231
00:08:37,458 –> 00:08:39,019
میتوانیم با
232
00:08:39,019 –> 00:08:41,929
استفاده از این تکنیک با رشتهها دستکاری رشتهها و ترکیب رشتهها را انجام دهیم،
233
00:08:41,929 –> 00:08:45,350
بنابراین علاوه بر متغیرها،
234
00:08:45,350 –> 00:08:47,149
پایتون نیز از تمام کارهای مشابه دیگر پشتیبانی میکند.
235
00:08:47,149 –> 00:08:48,439
تورهایی که هسته اصلی بسیاری از
236
00:08:48,439 –> 00:08:50,540
زبان های برنامه نویسی رویه ای مانند
237
00:08:50,540 –> 00:08:53,000
شرایط هستند، بنابراین اجازه دهید
238
00:08:53,000 –> 00:08:55,550
اکنون به یک مثال نگاهی بیندازیم که ببینیم آیا
239
00:08:55,550 –> 00:08:59,180
یک عدد مثبت است یا منفی یا
240
00:08:59,180 –> 00:09:01,160
به عنوان مثال صفر، بنابراین من یک فایل جدید ایجاد
241
00:09:01,160 –> 00:09:05,060
می کنم که آن را شرایط می نامم. pi و
242
00:09:05,060 –> 00:09:07,250
داخل شرایط کم میشود، ابتدا
243
00:09:07,250 –> 00:09:09,529
از کاربر میخواهم که مقداری ورودی را تایپ کند، میگویم
244
00:09:09,529 –> 00:09:11,320
ورودی
245
00:09:11,320 –> 00:09:13,360
شماره دو یعنی میدانید یک عدد را تایپ کنید
246
00:09:13,360 –> 00:09:15,880
و ما آن ورودی را در داخل متغیری ذخیره میکنیم
247
00:09:15,880 –> 00:09:16,990
که میخواهم آن را وارد کنم.
248
00:09:16,990 –> 00:09:21,790
با n تماس بگیرید و حالا میتوانم سؤال بپرسم، میتوانم
249
00:09:21,790 –> 00:09:24,459
چیزی بگویم اگر n بزرگتر از
250
00:09:24,459 –> 00:09:30,790
صفر است، چاپ کنید و او مثبت است و بنابراین
251
00:09:30,790 –> 00:09:32,230
آنچه در اینجا اتفاق میافتد این است که من یک شرط پایتون دارم
252
00:09:32,230 –> 00:09:34,569
و نحوه عملکرد یک شرط پایتون
253
00:09:34,569 –> 00:09:36,730
این است که با این کلمه کلیدی a شروع میشود.
254
00:09:36,730 –> 00:09:39,639
کلمه کلیدی مانند اگر با یک عبارت بولی دنبال شود،
255
00:09:39,639 –> 00:09:41,500
عبارتی که
256
00:09:41,500 –> 00:09:43,329
قرار است به درست یا نادرست ارزیابی شود یا
257
00:09:43,329 –> 00:09:45,310
چیزی شبیه درست یا نادرست باشد،
258
00:09:45,310 –> 00:09:46,690
می توانیم کمی در مورد آن صحبت کنیم همانطور
259
00:09:46,690 –> 00:09:48,579
که ممکن است بعداً شما را ببینیم و سپس علامت دونقطه
260
00:09:48,579 –> 00:09:50,860
به معنای خوب است اینجا ابتدای
261
00:09:50,860 –> 00:09:53,410
t متن دستور S و در
262
00:09:53,410 –> 00:09:55,269
پایتون به روشی که می دانیم در
263
00:09:55,269 –> 00:09:57,160
داخل بدنه یک دستور if یا
264
00:09:57,160 –> 00:09:58,870
داخل بدنه هر بلوک کد دیگری قرار داریم از
265
00:09:58,870 –> 00:10:01,509
طریق تورفتگی است، بنابراین در برخی از زبان ها
266
00:10:01,509 –> 00:10:04,060
مانند C یا در زبان هایی مانند HTML که
267
00:10:04,060 –> 00:10:06,220
ما چند سخنرانی پیش دیدم،
268
00:10:06,220 –> 00:10:08,800
تورفتگی به شدت توسط کامپیوتر مورد نیاز
269
00:10:08,800 –> 00:10:10,300
نیست تا بتواند
270
00:10:10,300 –> 00:10:12,279
آنچه را که داخل برنامه در
271
00:10:12,279 –> 00:10:14,949
پایتون است تجزیه و درک کند، این تفاوت دارد که تورفتگی
272
00:10:14,949 –> 00:10:17,680
مورد نیاز است زیرا تورفتگی به این صورت است که
273
00:10:17,680 –> 00:10:20,350
برنامه چگونه میداند کد
274
00:10:20,350 –> 00:10:21,940
داخل if وجود دارد. دستور و چه کدی
275
00:10:21,940 –> 00:10:24,760
خارج از دستور if است، بنابراین
276
00:10:24,760 –> 00:10:26,740
اگر n بزرگتر از 0 باشد و سپس
277
00:10:26,740 –> 00:10:29,050
هر چیزی که در زیر F فرورفته شده است،
278
00:10:29,050 –> 00:10:31,420
تمام بدنه عبارت ‘men’
279
00:10:31,420 –> 00:10:33,430
است، خطوط کد هستند که اجرا می شوند اگر
280
00:10:33,430 –> 00:10:35,649
این شرط این باشد. عبارت بولی
281
00:10:35,649 –> 00:10:37,870
و بزرگتر از صفر درست است،
282
00:10:37,870 –> 00:10:40,240
بنابراین اگر n بزرگتر از 0 باشد، چاپ
283
00:10:40,240 –> 00:10:44,110
می کنیم و مثبت است و سپس می توانیم
284
00:10:44,110 –> 00:10:46,149
یک شرط اضافی اضافه
285
00:10:46,149 –> 00:10:47,980
286
00:10:47,980 –> 00:10:50,769
کنیم. e print n
287
00:10:50,769 –> 00:10:53,860
مثبت نیست، اما من می توانم کمی
288
00:10:53,860 –> 00:10:55,720
دقیق تر از آن باشم، در اینجا به نوعی دو
289
00:10:55,720 –> 00:10:57,970
شاخه وجود دارد که یکی اگر n بزرگتر از 0 باشد و
290
00:10:57,970 –> 00:11:00,490
یک مورد دیگر برای رسیدگی به تمام سناریوهای احتمالی دیگر،
291
00:11:00,490 –> 00:11:02,680
اما واقعاً چیزی است که من می
292
00:11:02,680 –> 00:11:05,199
خواهم. انجام این کار انجام یک بررسی دوم در
293
00:11:05,199 –> 00:11:06,699
زبان های دیگر است که اگر این شرط درست نباشد می توان آن را یک else نامید،
294
00:11:06,699 –> 00:11:08,949
اگر این شرط
295
00:11:08,949 –> 00:11:11,130
درست نیست، اما این شرط دیگر درست است،
296
00:11:11,130 –> 00:11:14,519
پایتون این را به اختصار فقط lf-ii
297
00:11:14,519 –> 00:11:18,130
LIF می کند و فقط برای other if بنابراین می توانم بگویم
298
00:11:18,130 –> 00:11:22,120
L اگر n است. کمتر از 0 است پس بیایید
299
00:11:22,120 –> 00:11:24,920
جلوتر برویم و چاپ کنیم n منفی است
300
00:11:24,920 –> 00:11:31,370
و در غیر این صورت چاپ n صفر است، بنابراین ایده
301
00:11:31,370 –> 00:11:33,230
در اینجا این است که اگر n بزرگتر از
302
00:11:33,230 –> 00:11:36,200
صفر باشد، برخی از وظایف L را انجام می دهیم، اگر به
303
00:11:36,200 –> 00:11:37,790
عبارت دیگر اگر بزرگتر از صفر نباشد،
304
00:11:37,790 –> 00:11:39,740
ما بررسی کنید که آیا کمتر از صفر است
305
00:11:39,740 –> 00:11:41,870
که در این صورت چاپ می کنیم که n
306
00:11:41,870 –> 00:11:44,029
منفی است، در غیر این صورت اگر هیچ یک از این دو
307
00:11:44,029 –> 00:11:45,500
شرط درست نباشد، مثبت نیست
308
00:11:45,500 –> 00:11:46,910
و منفی نیست
309
00:11:46,910 –> 00:11:48,800
، تنها احتمال باقی مانده این است که
310
00:11:48,800 –> 00:11:51,260
N صفر است، بنابراین می توانیم آن را چاپ کنیم. n
311
00:11:51,260 –> 00:11:53,240
صفر است و بنابراین ممکن است برای این برنامه دوست داشته باشیم
312
00:11:53,240 –> 00:11:55,040
کار کنم اما ببین چه اتفاقی میافتد
313
00:11:55,040 –> 00:11:57,680
اگر اکنون سعی کنم و شرایط پاس را اجرا کنم، حتی
314
00:11:57,680 –> 00:11:58,910
اگر به طور منطقی در ذهنمان باشد و
315
00:11:58,910 –> 00:12:00,589
اکنون به آن نگاه کنیم، احتمالاً بسیار منطقی به نظر میرسد
316
00:12:00,589 –> 00:12:02,810
اگر شرط پایتون pi را اجرا کنم
317
00:12:02,810 –> 00:12:05,810
و عددی را تایپ کنم،
318
00:12:05,810 –> 00:12:08,660
عدد پنج را برای آن تایپ میکنم. به عنوان مثال، فقط
319
00:12:08,660 –> 00:12:09,350
ببینید چه اتفاقی میافتد،
320
00:12:09,350 –> 00:12:11,779
اتفاق عجیبی رخ داده است
321
00:12:11,779 –> 00:12:13,579
و این اولین
322
00:12:13,579 –> 00:12:16,070
استثنای پایتون است، خطایی که اتفاق میافتد زیرا
323
00:12:16,070 –> 00:12:18,019
چیزی دقیقاً
324
00:12:18,019 –> 00:12:20,240
در برنامه پایتون ما انجام نشده است و به مرور زمان
325
00:12:20,240 –> 00:12:21,589
یاد خواهید گرفت که چگونه این استثنا را تجزیه کنید.
326
00:12:21,589 –> 00:12:23,420
و درک کنید که معنی آن چیست
327
00:12:23,420 –> 00:12:25,550
و از کجا شروع به اشکال زدایی کنید، اما یادگیری
328
00:12:25,550 –> 00:12:27,199
نحوه خواندن این استثناها و
329
00:12:27,199 –> 00:12:28,910
نحوه برخورد با آنها قطعاً
330
00:12:28,910 –> 00:12:30,709
یک مهارت بسیار ارزشمند در مسیر شما برای
331
00:12:30,709 –> 00:12:32,870
تبدیل شدن به یک توسعه دهنده پایتون است و بنابراین بیایید
332
00:12:32,870 –> 00:12:34,220
ببینیم آیا می توانیم بفهمیم که چه چیزی این
333
00:12:34,220 –> 00:12:36,560
استثنا می گوید اغلب اوقات من
334
00:12:36,560 –> 00:12:38,329
با نگاه کردن به قسمت پایین شروع می کنم و می بینم
335
00:12:38,329 –> 00:12:40,519
که یک خطای نوع وجود دارد که از
336
00:12:40,519 –> 00:12:42,110
نوع استثنایی است که رخ داده
337
00:12:42,110 –> 00:12:43,490
338
00:12:43,490 –> 00:12:45,050
است. کارهای ython که میتوانیم انجام دهیم
339
00:12:45,050 –> 00:12:47,240
که باعث ایجاد خطا میشوند در این مورد
340
00:12:47,240 –> 00:12:49,399
خطای نوع است که به طور کلی به این معنی است
341
00:12:49,399 –> 00:12:52,070
که برخی از انواع ناهماهنگی وجود دارد که
342
00:12:52,070 –> 00:12:54,260
پایتون انتظار داشت چیزی از یک
343
00:12:54,260 –> 00:12:56,540
نوع باشد، اما معلوم شد که نوع دیگری
344
00:12:56,540 –> 00:12:58,579
است، بنابراین بیایید سعی کنیم بفهمیم که این چیست.
345
00:12:58,579 –> 00:13:01,190
ممکن است بگوییم بزرگتر از علامت
346
00:13:01,190 –> 00:13:04,399
بین نمونههای stur
347
00:13:04,399 –> 00:13:08,690
کوتاه برای رشته و int پشتیبانی نمیشود، بنابراین چه
348
00:13:08,690 –> 00:13:10,310
معنی میدهد، حدس میزنم به این معنی است که
349
00:13:10,310 –> 00:13:11,899
علامت بزرگتر از علامتی که بررسی میکند یک
350
00:13:11,899 –> 00:13:13,850
چیز بزرگتر از دیگری است،
351
00:13:13,850 –> 00:13:16,399
کار نمیکند اگر شما مقایسه یک رشته با یک
352
00:13:16,399 –> 00:13:18,350
عدد صحیح و این احتمالاً کاملاً
353
00:13:18,350 –> 00:13:19,790
منطقی است، واقعاً منطقی
354
00:13:19,790 –> 00:13:21,920
نیست که بگوییم یک رشته بزرگتر یا کوچکتر
355
00:13:21,920 –> 00:13:23,240
از یک عدد صحیح است وقتی
356
00:13:23,240 –> 00:13:25,190
357
00:13:25,190 –> 00:13:26,630
در مورد اعداد بزرگتر یا کمتر از معمول صحبت می کنیم.
358
00:13:26,630 –> 00:13:29,329
به عنوان مثال، هر دو باید اعداد صحیح باشند، پس چرا
359
00:13:29,329 –> 00:13:31,010
فکر می کنیم که بزرگتر از مقایسه
360
00:13:31,010 –> 00:13:33,170
یک رشته و یک عدد صحیح است، اکنون می
361
00:13:33,170 –> 00:13:34,940
توانیم کمی بالاتر به
362
00:13:34,940 –> 00:13:37,130
دنبال عقب نگاه کنیم که نشان می دهد کدام بخش از کد را نشان می دهد.
363
00:13:37,130 –> 00:13:38,400
364
00:13:38,400 –> 00:13:39,990
این مشکل را ایجاد می کنند و در این
365
00:13:39,990 –> 00:13:41,820
مورد ردیابی بازگشت بسیار کوتاه است، فقط
366
00:13:41,820 –> 00:13:44,160
به من اشاره می کند که یک خط از یک
367
00:13:44,160 –> 00:13:46,080
فایل واحد را نشان می دهد و می گوید در شرایط فایل
368
00:13:46,080 –> 00:13:50,160
PI در خط 3، در اینجا خطی است که
369
00:13:50,160 –> 00:13:52,920
اگر n بزرگتر از 0 باشد، استثنا را ایجاد می کند.
370
00:13:52,920 –> 00:13:56,670
بنابراین، چه استثنایی در اینجا وجود دارد، خوب
371
00:13:56,670 –> 00:13:58,380
0 بدیهی است که یک عدد صحیح است، زیرا
372
00:13:58,380 –> 00:14:00,390
فقط یک عدد صحیح است و بنابراین اگر بزرگتر
373
00:14:00,390 –> 00:14:02,130
باشد، فکر می کند که یک رشته را
374
00:14:02,130 –> 00:14:04,620
با یک عدد صحیح مقایسه می کند، پس n به نوعی باید یک
375
00:14:04,620 –> 00:14:06,510
رشته باشد، حتی اگر من عدد 5 را تایپ کردم،
376
00:14:06,510 –> 00:14:09,600
شما هنوز هم باید فکر کنید. و یک رشته است،
377
00:14:09,600 –> 00:14:11,700
پس چرا ممکن است اجازه دهید
378
00:14:11,700 –> 00:14:13,290
دوباره به کد نگاهی بیندازیم و ببینیم که آیا می توانیم
379
00:14:13,290 –> 00:14:15,660
به خوبی
380
00:14:15,660 –> 00:14:18,390
381
00:14:18,390 –> 00:14:20,460
بفهمیم که چه اتفاقی می افتد.
382
00:14:20,460 –> 00:14:23,160
رشته و به نوعی
383
00:14:23,160 –> 00:14:24,870
به عنوان یک رشته ختم می شود که بسیار
384
00:14:24,870 –> 00:14:26,340
منطقی است زیرا تابع ورودی
385
00:14:26,340 –> 00:14:28,800
نمی داند که آیا من عددی را
386
00:14:28,800 –> 00:14:30,180
تایپ کرده ام یا یک حرف را
387
00:14:30,180 –> 00:14:31,560
تایپ کرده ام یا در کل نویسه های دیگر را تایپ کرده ام
388
00:14:31,560 –> 00:14:34,410
برخی از ورودی ها نمی دانند که باید آن را پس بدهند.
389
00:14:34,410 –> 00:14:36,600
داده های آن به شکل int یا به
390
00:14:36,600 –> 00:14:38,610
صورت float یا به هر شکل دیگری است، بنابراین
391
00:14:38,610 –> 00:14:40,170
به طور پیش فرض فقط رشته ای را برمی گرداند
392
00:14:40,170 –> 00:14:43,410
که کاربر چه کاراکتری را
393
00:14:43,410 –> 00:14:46,830
به عنوان ورودی خود تایپ کرده است، بنابراین من می خواهم اکنون چه کار کنم
394
00:14:46,830 –> 00:14:48,060
. برای اینکه این برنامه
395
00:14:48,060 –> 00:14:50,310
به روشی که من می خواستم کار کند این است که این را بگیرم و
396
00:14:50,310 –> 00:14:53,670
آن را به یک عدد صحیح تبدیل کنم یا
397
00:14:53,670 –> 00:14:56,190
به اصطلاح به یک عدد صحیح تبدیل کنم و راهی
398
00:14:56,190 –> 00:14:58,290
که می توانم این کار را انجام دهم استفاده از
399
00:14:58,290 –> 00:15:00,810
تابعی در پایتون به نام int است که
400
00:15:00,810 –> 00:15:03,480
هر چیزی را می گیرد و آن را به یک عدد صحیح تبدیل میکند، بنابراین
401
00:15:03,480 –> 00:15:06,900
در اینجا میتوانم بگویم int و سپس به عنوان
402
00:15:06,900 –> 00:15:08,940
آرگومان تابع int،
403
00:15:08,940 –> 00:15:11,160
ورودی تابع n را وارد کنم، من فقط
404
00:15:11,160 –> 00:15:13,080
میخواهم کل این عدد ورودی عبارت را درج
405
00:15:13,080 –> 00:15:15,780
کنم، بنابراین از کاربر میخواهم که
406
00:15:15,780 –> 00:15:17,310
یک عدد را وارد کند. عددی که در متنی تایپ
407
00:15:17,310 –> 00:15:19,680
می کنند تابع ورودی به من یک رشته برمی گرداند
408
00:15:19,680 –> 00:15:22,140
و آن رشته به
409
00:15:22,140 –> 00:15:25,560
عنوان ورودی تابع int عمل می کند که
410
00:15:25,560 –> 00:15:28,080
سپس در داخل این متغیر به نام n ذخیره می شود،
411
00:15:28,080 –> 00:15:31,290
بنابراین اکنون که می دانیم n
412
00:15:31,290 –> 00:15:33,390
واقعا یک عدد صحیح است، اجازه دهید سعی کنید دوباره این برنامه را اجرا کنید و
413
00:15:33,390 –> 00:15:35,280
دوباره به ترمینال باز می
414
00:15:35,280 –> 00:15:38,280
گردم al run Python condition PI
415
00:15:38,280 –> 00:15:40,680
از من خواسته می شود عددی را تایپ کنم،
416
00:15:40,680 –> 00:15:44,930
عددی مانند 5 را تایپ می کنم و بسیار خوب
417
00:15:44,930 –> 00:15:46,680
به نظر می رسد که هنوز کار نکرده است و
418
00:15:46,680 –> 00:15:47,610
کار نمی کند زیرا فایل را ذخیره نکردم،
419
00:15:47,610 –> 00:15:48,960
بنابراین ادامه می دهم. و فایل را ذخیره
420
00:15:48,960 –> 00:15:51,830
کنید و دوباره سعی کنید عددی را تایپ کنید و
421
00:15:51,830 –> 00:15:54,200
می بینیم که در واقع n مثبت است، ما
422
00:15:54,200 –> 00:15:55,940
هیچ استثنایی دریافت نمی کنیم، ما توانستیم
423
00:15:55,940 –> 00:15:57,620
کدها را با موفقیت اجرا کنیم و ببینیم که
424
00:15:57,620 –> 00:15:59,720
مقدار n مثبت است و من می توانم
425
00:15:59,720 –> 00:16:01,070
این را دوباره امتحان کنم تا دو
426
00:16:01,070 –> 00:16:03,260
شاخه شرطی دیگر یک را منفی تایپ می کنند،
427
00:16:03,260 –> 00:16:05,210
به عنوان مثال برای دیدن اینکه n
428
00:16:05,210 –> 00:16:07,730
منفی است و در غیر این صورت، اگر
429
00:16:07,730 –> 00:16:10,400
مثبت یا منفی نباشد، می دانیم که
430
00:16:10,400 –> 00:16:12,980
n صفر است و بنابراین اولین
431
00:16:12,980 –> 00:16:15,320
مواجهه ما با شرایط در پایتون،
432
00:16:15,320 –> 00:16:16,580
توانایی داشتن چندین شاخه مختلف بود.
433
00:16:16,580 –> 00:16:19,040
و کدهای مختلفی را بسته
434
00:16:19,040 –> 00:16:21,080
به برخی از عبارتها انجام دهید که میخواهیم آن را
435
00:16:21,080 –> 00:16:23,000
به عنوان یک
436
00:16:23,000 –> 00:16:27,440
عبارت درست یا یک عبارت نادرست ارزیابی کنیم، بنابراین اجازه
437
00:16:27,440 –> 00:16:28,400
دهید نگاهی به برخی از
438
00:16:28,400 –> 00:16:29,900
ویژگیهای دیگری که قرار است
439
00:16:29,900 –> 00:16:32,030
در زبان پایتون وجود داشته باشد بیندازیم.
440
00:16:32,030 –> 00:16:33,860
از قدرتمندترین ویژگی های پایتون
441
00:16:33,860 –> 00:16:36,020
انواع مختلفی از انواع مختلف توالی
442
00:16:36,020 –> 00:16:38,720
انواع داده آن است که مقادیر را در
443
00:16:38,720 –> 00:16:40,400
نوعی توالی یا مجموعه ای از
444
00:16:40,400 –> 00:16:42,860
مقادیر را به طور کلی ذخیره می کند، بنابراین من ادامه می دهم و
445
00:16:42,860 –> 00:16:44,360
یک فایل جدید ایجاد می کنم که
446
00:16:44,360 –> 00:16:47,840
دنباله ها را pi می نامد و تعدادی از آنها وجود دارد.
447
00:16:47,840 –> 00:16:49,490
انواع مختلفی از دنباله ها که همگی
448
00:16:49,490 –> 00:16:51,950
از ویژگی های مشابهی پیروی می کنند، اما یکی از
449
00:16:51,950 –> 00:16:53,480
انواع دنباله ها، نوعی است که
450
00:16:53,480 –> 00:16:56,030
قبلاً دیده ایم که برای مثال فقط یک رشته است،
451
00:16:56,030 –> 00:16:58,490
بنابراین اگر نامی داشته باشم و نام
452
00:16:58,490 –> 00:17:01,540
آن چیزی شبیه به هری باشد، برای مثال و
453
00:17:01,540 –> 00:17:04,490
این دنباله اجازه می دهد. من می توانم به
454
00:17:04,490 –> 00:17:07,459
عناصر جداگانه در داخل
455
00:17:07,459 –> 00:17:09,920
دنباله دسترسی داشته باشم و برای انجام این کار بسیار
456
00:17:09,920 –> 00:17:11,660
شبیه یک آرایه در زبان های دیگر است اگر
457
00:17:11,660 –> 00:17:13,880
قبلاً آنها را تجربه کرده اید، اما می توانم
458
00:17:13,880 –> 00:17:19,310
نام براکت را چاپ کنم
459
00:17:19,310 –> 00:17:21,470
460
00:17:21,470 –> 00:17:23,660
عناصر و
461
00:17:23,660 –> 00:17:25,990
من را به یک عنصر خاص
462
00:17:25,990 –> 00:17:28,640
در داخل آن دنباله دسترسی می دهد و بنابراین
463
00:17:28,640 –> 00:17:30,980
اگر رشته ای مانند نام داشته باشم و بگویم نام
464
00:17:30,980 –> 00:17:33,170
براکت 0 باشد، اثر
465
00:17:33,170 –> 00:17:35,660
آن t خواهد بود. دنباله طولانی او و دریافت
466
00:17:35,660 –> 00:17:38,480
عنصر صفر در بسیاری از
467
00:17:38,480 –> 00:17:39,740
زبان های برنامه نویسی و به طور کلی در برنامه نویسی،
468
00:17:39,740 –> 00:17:41,750
ما اغلب شروع به شمارش چیزها
469
00:17:41,750 –> 00:17:43,880
در 0 می کنیم، بنابراین اولین مورد در
470
00:17:43,880 –> 00:17:46,220
دنباله مورد 0 است، دومین مورد،
471
00:17:46,220 –> 00:17:48,110
مورد 1 است، بنابراین به راحتی می توان چیزها را از 0
472
00:17:48,110 –> 00:17:49,970
شمرد. یک خطا وجود دارد، اما فقط بدانید
473
00:17:49,970 –> 00:17:52,250
که مورد 0 از نام باید
474
00:17:52,250 –> 00:17:54,320
اولین کاراکتر نام باشد و من میتوانم
475
00:17:54,320 –> 00:17:57,050
ببینم که اگر پایتون را اجرا کنم،
476
00:17:57,050 –> 00:18:00,350
این فایل را ذخیره میکنم و دنبالههای Python PI را اجرا
477
00:18:00,350 –> 00:18:02,600
میکنم و چیزی که دریافت میکنم فقط
478
00:18:02,600 –> 00:18:04,610
کاراکتر اول نام هری که در این
479
00:18:04,610 –> 00:18:05,840
مورد حرف H است
480
00:18:05,840 –> 00:18:07,790
اگر من بخواهم کاراکتر 1 را چاپ
481
00:18:07,790 –> 00:18:10,220
482
00:18:10,220 –> 00:18:12,500
کنم که اگر برنامه را دوباره اجرا کنم نویسه دوم نام خواهد بود
483
00:18:12,500 –> 00:18:15,680
، حرف A را دریافت می کنم و این
484
00:18:15,680 –> 00:18:17,270
نوع نمایه سازی برای بسیاری کار می کند.
485
00:18:17,270 –> 00:18:19,160
انواع مختلف دنبالهها نه فقط یک
486
00:18:19,160 –> 00:18:21,140
رشته که اتفاقاً دنبالهای
487
00:18:21,140 –> 00:18:23,090
از کاراکترها هستند، بلکه انواع دیگر نیز
488
00:18:23,090 –> 00:18:26,240
به عنوان مثال پایتون یک نوع برای
489
00:18:26,240 –> 00:18:28,610
لیست دادهها دارد، بنابراین اگر دنبالهای از هر
490
00:18:28,610 –> 00:18:30,680
نوع دادهای که میخواهم ذخیره کنم، میتوانم
491
00:18:30,680 –> 00:18:32,780
آن اطلاعات را ذخیره کنید در داخل یک لیست
492
00:18:32,780 –> 00:18:35,480
در پایتون، بنابراین شاید به جای ذخیره
493
00:18:35,480 –> 00:18:37,640
یک نام، چندین نام داشته باشم که
494
00:18:37,640 –> 00:18:39,260
میخواهم آنها را ذخیره کنم، بنابراین میخواهم
495
00:18:39,260 –> 00:18:42,920
نامهایمان مانند هری و رون و
496
00:18:42,920 –> 00:18:45,110
هرمواین را ذخیره کنم، بنابراین اکنون سه نام دارم که
497
00:18:45,110 –> 00:18:47,150
همه در دنبالهای در داخل آن ذخیره میشوند. یک
498
00:18:47,150 –> 00:18:50,270
لیست پایتون و میتوانم بدانید که میتوانم
499
00:18:50,270 –> 00:18:51,620
همه نامها را چاپ کنم، برای مثال
500
00:18:51,620 –> 00:18:53,750
فقط برای چاپ همه نامها تا
501
00:18:53,750 –> 00:18:55,520
ببینم مقدار نام متغیرها
502
00:18:55,520 –> 00:18:57,560
برابر است و خواهیم دید که وقتی این کار را انجام
503
00:18:57,560 –> 00:18:59,870
دادم، دریافت میکنم چاپی از محتویات
504
00:18:59,870 –> 00:19:01,970
آن لیست هری ران هرمیون
505
00:19:01,970 –> 00:19:04,430
به ترتیب خاص، اما شما همچنین می توانید
506
00:19:04,430 –> 00:19:06,770
همانطور که می توانید در فهرست رشته
507
00:19:06,770 –> 00:19:09,080
ای فهرست کنید تا بگویید فقط
508
00:19:09,080 –> 00:19:11,690
اولین مورد در این لیست نام ها را برای من به دست آورید
509
00:19:11,690 –> 00:19:13,400
که در این مورد وقتی من این
510
00:19:13,400 –> 00:19:16,820
برنامه را اجرا میکنم که هری باشد، بنابراین
511
00:19:16,820 –> 00:19:18,020
تعدادی از انواع توالیهای مختلف وجود
512
00:19:18,020 –> 00:19:19,820
دارد که میتوانید برای نمایش
513
00:19:19,820 –> 00:19:22,610
دادهها از یکی دیگر استفاده کنید، اتفاقاً اگر چند مقدار داشته
514
00:19:22,610 –> 00:19:25,700
باشید، اغلب از یک تاپل استفاده میشود.
515
00:19:25,700 –> 00:19:27,260
516
00:19:27,260 –> 00:19:29,660
که قرار نیست تغییر کند جز تو نیاز به
517
00:19:29,660 –> 00:19:31,670
ذخیره یک جفت مقدار مانند دو مقدار
518
00:19:31,670 –> 00:19:33,620
با هم یا سه مقدار با هم یا
519
00:19:33,620 –> 00:19:35,270
چیزی شبیه به آن، ممکن است تصور کنید که
520
00:19:35,270 –> 00:19:36,920
اگر در حال نوشتن برنامه ای برای
521
00:19:36,920 –> 00:19:38,870
پرداختن به نمودارهای دو بعدی هستید، به عنوان
522
00:19:38,870 –> 00:19:42,110
مثال ممکن است بخواهید یک نقطه را به عنوان
523
00:19:42,110 –> 00:19:45,350
یک مقدار x نشان دهید. و یک مقدار Y و می
524
00:19:45,350 –> 00:19:47,180
توانید دو متغیر برای آن ایجاد کنید، می توانم بگویم
525
00:19:47,180 –> 00:19:49,340
می دانید اجازه دهید بگویم که مختصات
526
00:19:49,340 –> 00:19:51,800
X برابر با ده نقطه O و
527
00:19:51,800 –> 00:19:53,750
مختصات Y برابر با بیست نقطه O است،
528
00:19:53,750 –> 00:19:57,020
اما اکنون دو متغیر ایجاد می کنم. برای
529
00:19:57,020 –> 00:19:59,870
اینکه واقعاً یک واحد چیست که
530
00:19:59,870 –> 00:20:02,360
اتفاقاً دارای دو قسمت است و بنابراین برای
531
00:20:02,360 –> 00:20:04,520
نشان دادن آن میتوانیم از یک تاپل در
532
00:20:04,520 –> 00:20:06,400
پایتون استفاده کنیم و فقط بگوییم چیزی شبیه
533
00:20:06,400 –> 00:20:10,520
مختصات برابر با ده نقطه O کاما
534
00:20:10,520 –> 00:20:13,250
بیست نقطه O است، در حالی که در لیستها
535
00:20:13,250 –> 00:20:15,470
از براکت برای نشان دادن مکان استفاده میکنیم.
536
00:20:15,470 –> 00:20:17,060
لیست شروع می شود و در جایی که لیست
537
00:20:17,060 –> 00:20:19,399
به یک تاپل ختم می شود، فقط از پرانتز استفاده
538
00:20:19,399 –> 00:20:20,929
می کنیم و می گوییم که تعدادی از مقادیر را
539
00:20:20,929 –> 00:20:22,849
با هم گروه بندی می کنیم، یک مقدار ده
540
00:20:22,849 –> 00:20:24,979
نقطه O را با مقدار دوم بیست نقطه
541
00:20:24,979 –> 00:20:27,049
O گروه بندی می کنیم و اکنون می توانیم این دو را رد کنیم.
542
00:20:27,049 –> 00:20:28,460
ارزش s به عنوان یک واحد
543
00:20:28,460 –> 00:20:30,830
تنها با ارجاع به آنها با استفاده از یک
544
00:20:30,830 –> 00:20:34,159
نام واحد که در این مورد مختصات است، بنابراین
545
00:20:34,159 –> 00:20:35,450
تعدادی از انواع
546
00:20:35,450 –> 00:20:37,369
مختلف این توالی های مختلف مختلف وجود دارد و
547
00:20:37,369 –> 00:20:38,869
برخی از آن دنباله هایی که در اینجا به آنها
548
00:20:38,869 –> 00:20:41,479
نگاه خواهیم کرد این ساختارهای داده
549
00:20:41,479 –> 00:20:44,119
هستند. به عنوان مثال لیست دنباله ای از
550
00:20:44,119 –> 00:20:45,769
مقادیر قابل تغییر است که ما به آن نگاه کردیم
551
00:20:45,769 –> 00:20:47,839
و قابل تغییر است فقط به این معنی که
552
00:20:47,839 –> 00:20:49,700
اگر لیستی داشته باشم می توانیم عناصر لیست را تغییر دهیم،
553
00:20:49,700 –> 00:20:51,769
می توانم چیزی را به
554
00:20:51,769 –> 00:20:53,479
انتهای لیست اضافه کنم. می توانم چیزی را از
555
00:20:53,479 –> 00:20:55,549
لیست حذف کنم. می توانید مقادیر داخل لیست را تغییر دهید
556
00:20:55,549 –> 00:20:57,830
یک تاپل از طرف دیگر
557
00:20:57,830 –> 00:20:59,929
دنباله ای از مقادیر تغییرناپذیر است که این
558
00:20:59,929 –> 00:21:01,489
مقادیر نمی توانند تغییر کنند، شما نمی توانید
559
00:21:01,489 –> 00:21:03,589
عنصر دیگری را به زوج موجود اضافه کنید.
560
00:21:03,589 –> 00:21:05,239
561
00:21:05,239 –> 00:21:07,099
و
562
00:21:07,099 –> 00:21:08,719
ساختارهای داده دیگری نیز وجود دارد
563
00:21:08,719 –> 00:21:10,039
که ما در یک لحظه به آنها نگاه خواهیم کرد
564
00:21:10,039 –> 00:21:12,979
شامل مجموعه هایی هستند که مجموعه ای از
565
00:21:12,979 –> 00:21:15,289
مقادیر منحصر به فرد هستند، بنابراین اگر با
566
00:21:15,289 –> 00:21:16,909
مجموعه هایی از دنیای ریاضیات آشنا هستید،
567
00:21:16,909 –> 00:21:19,190
ایده بسیار مشابهی است. که کجا e به عنوان یک لیست
568
00:21:19,190 –> 00:21:21,139
در یک تاپل، چیزها را به ترتیب خاصی نگه می دارد،
569
00:21:21,139 –> 00:21:24,200
یک مجموعه چیزها را به ترتیب خاصی نگه نمی
570
00:21:24,200 –> 00:21:25,999
دارد، بلکه فقط یک مجموعه است
571
00:21:25,999 –> 00:21:28,519
و به ویژه همه مقادیر
572
00:21:28,519 –> 00:21:30,950
باید در یک لیست منحصر به فرد باشند یا در یک تاپل
573
00:21:30,950 –> 00:21:32,269
ممکن است شما یکسان داشته باشید. مقداری که
574
00:21:32,269 –> 00:21:34,729
چندین بار در یک مجموعه
575
00:21:34,729 –> 00:21:37,190
ظاهر میشود، هر مقدار دقیقاً یک بار ظاهر میشود و
576
00:21:37,190 –> 00:21:38,899
راههایی وجود دارد که میتوانید
577
00:21:38,899 –> 00:21:40,700
با استفاده از مجموعهها برنامههای خود را کارآمدتر کنید،
578
00:21:40,700 –> 00:21:42,589
اگر میدانید که
579
00:21:42,589 –> 00:21:44,149
اگر به ترتیب اهمیتی نمیدهید، فقط به یک مجموعه نیاز دارید.
580
00:21:44,149 –> 00:21:45,710
اگر قرار است
581
00:21:45,710 –> 00:21:47,629
چیزی حداکثر یک بار نمایش داده شود،
582
00:21:47,629 –> 00:21:49,849
میتوانید از مجموعهای
583
00:21:49,849 –> 00:21:51,080
استفاده کنید تا برنامههای خود را به طور بالقوه کمی
584
00:21:51,080 –> 00:21:52,489
کارآمدتر و کمی زیباتر
585
00:21:52,489 –> 00:21:55,309
طراحی کنید و در نهایت از یک ساختار داده دیگر
586
00:21:55,309 –> 00:21:56,599
که کاملاً قدرتمند است
587
00:21:56,599 –> 00:21:57,739
و تعدادی را ایجاد میکند استفاده کنید. of
588
00:21:57,739 –> 00:22:00,229
times در طول این دوره یک فرهنگ لغت
589
00:22:00,229 –> 00:22:02,629
در پایتون است که فقط به یک دستور خلاصه شده
590
00:22:02,629 –> 00:22:04,159
است که مجموعهای از آن چیزی است که ما آن
591
00:22:04,159 –> 00:22:06,799
را جفتهای ارزش کلیدی مینامیم و روشی که من دوست دارم در مورد آن
592
00:22:06,799 –> 00:22:08,599
فکر کنم با یک دیسک فیزیکی واقعی است.
593
00:22:08,599 –> 00:22:10,070
کتابی که ممکن است در
594
00:22:10,070 –> 00:22:11,929
کتابخانه ای بیابید که کلمات را با
595
00:22:11,929 –> 00:22:13,849
تعاریف آنها در یک فرهنگ لغت فیزیکی ترسیم می
596
00:22:13,849 –> 00:22:16,039
کند، فرهنگ لغت را باز می کنید
597
00:22:16,039 –> 00:22:18,499
و کلمه ای را جستجو می کنید و به این تعریف
598
00:22:18,499 –> 00:22:20,330
می رسید که پایتون معتاد بسیار
599
00:22:20,330 –> 00:22:21,529
شبیه است،
600
00:22:21,529 –> 00:22:23,479
ساختار داده ای خواهد بود. جایی که من میتوانم چیزی را
601
00:22:23,479 –> 00:22:26,570
با یک کلمه کلیدی یا یک مقدار جستجو کنم و مقدار دیگری به دست بیاورم
602
00:22:26,570 –> 00:22:28,999
، در نتیجه آن
603
00:22:28,999 –> 00:22:31,729
چیزی را که جستجو میکنم کلید
604
00:22:31,729 –> 00:22:33,290
مینامیم و آنچه را که وقتی مقدار را جستجو میکنم به دست میآوریم مینامیم
605
00:22:33,290 –> 00:22:35,930
، بنابراین جفتهایی از آن را حفظ میکنیم.
606
00:22:35,930 –> 00:22:37,880
کلیدها و مقادیر در مورد یک
607
00:22:37,880 –> 00:22:40,430
فرهنگ لغت واقعی در دنیای واقعی،
608
00:22:40,430 –> 00:22:42,170
کلید کلمهای است که میخواهیم آن را جستجو کنیم و
609
00:22:42,170 –> 00:22:44,450
مقدار نیز تعریف آن است، اما
610
00:22:44,450 –> 00:22:46,940
هر زمان که بخواهیم چیزی را به مقدار دیگری نگاشت کنیم، میتوانیم از آن به طور کلی در پایتون استفاده کنیم.
611
00:22:46,940 –> 00:22:48,740
612
00:22:48,740 –> 00:22:51,080
به طوری که ما می توانیم به
613
00:22:51,080 –> 00:22:53,060
راحتی آن مقدار را در داخل این ساختار داده جستجو
614
00:22:53,060 –> 00:22:55,130
کنیم، بنابراین نمونه هایی از
615
00:22:55,130 –> 00:22:57,740
فرهنگ لغت ها را نیز مشاهده خواهیم کرد، بنابراین بیایید اکنون
616
00:22:57,740 –> 00:22:59,060
اولین ساختار داده
617
00:22:59,060 –> 00:23:01,250
این لیست ها را بررسی
618
00:23:01,250 –> 00:23:03,320
کنیم تا با بهره گیری از ویژگی ها چه کاری انجام دهیم.
619
00:23:03,320 –> 00:23:04,910
که به عنوان مثال توسط یک لیست پایتون به ما داده می شود،
620
00:23:04,910 –> 00:23:07,670
بنابراین ما ادامه می دهیم
621
00:23:07,670 –> 00:23:10,370
و یک برنامه جدید ایجاد می کنیم که
622
00:23:10,370 –> 00:23:14,900
لیست ها را نقطه pi می نامم و در اینجا فقط می
623
00:23:14,900 –> 00:23:17,690
خواهم لیستی از نام ها ایجاد کنم تا نام ها
624
00:23:17,690 –> 00:23:22,340
برابر با هری رون هرمیون و به
625
00:23:22,340 –> 00:23:24,890
عنوان مثال، جینی و همانطور که من شروع به نوشتن چندین
626
00:23:24,890 –> 00:23:26,480
خط کد می کنم، به خصوص زمانی که
627
00:23:26,480 –> 00:23:28,370
برنامه های پایتون من شروع به طولانی شدن می کنند، می تواند
628
00:23:28,370 –> 00:23:30,200
ایده خوبی باشد که آنچه را که
629
00:23:30,200 –> 00:23:32,390
انجام می دهم مستند کنم، بنابراین می توانم بگویم اجازه دهید یک
630
00:23:32,390 –> 00:23:34,310
نظر به این خط خاص اضافه کنم. از کد
631
00:23:34,310 –> 00:23:36,440
فقط برای اینکه بدانم در این خط کد چه کاری انجام داده ام
632
00:23:36,440 –> 00:23:38,720
و در
633
00:23:38,720 –> 00:23:39,920
پایتون چند راه مختلف برای
634
00:23:39,920 –> 00:23:42,710
ایجاد نظر وجود دارد، اما ساده ترین راه
635
00:23:42,710 –> 00:23:45,350
فقط استفاده از علامت پوند یا تگ هش است.
636
00:23:45,350 –> 00:23:47,120
همانطور که شما اضافه می کنید که همه چیز
637
00:23:47,120 –> 00:23:48,740
بعد از آن برای بقیه
638
00:23:48,740 –> 00:23:51,410
خط یک نظر است، مفسر
639
00:23:51,410 –> 00:23:52,550
این نظرات را نادیده می گیرد که شما می توانید
640
00:23:52,550 –> 00:23:54,650
هر چه می خواهید بگویید، بیشتر برای شما
641
00:23:54,650 –> 00:23:56,720
برنامه نویس و برای کسی که
642
00:23:56,720 –> 00:23:58,490
برنامه شما را می خواند قادر است به آن نگاه کند.
643
00:23:58,490 –> 00:24:00,290
برنامه بفهمد چه می گوید و شکل دهد
644
00:24:00,290 –> 00:24:02,600
آنچه را که آنها باید در مورد آن انجام دهند را مشخص کنید،
645
00:24:02,600 –> 00:24:05,810
بنابراین من فقط می توانم بگویم لیستی از نام ها را تعریف کنید،
646
00:24:05,810 –> 00:24:07,550
به عنوان مثال فقط برای اینکه برای
647
00:24:07,550 –> 00:24:10,010
من روشن شود که من در داخل
648
00:24:10,010 –> 00:24:12,200
این خط کد چه کاری انجام داده ام تا
649
00:24:12,200 –> 00:24:13,550
بتوانم لیست نام ها را چاپ کنم. همانطور که قبلاً انجام دادهایم
650
00:24:13,550 –> 00:24:16,070
و خواهیم دید که وقتی لیست نامها را پرینت میکنم،
651
00:24:16,070 –> 00:24:19,810
آنچه را که به دست میآورم این است که اجازه دهید
652
00:24:19,810 –> 00:24:23,240
لیست را اجرا کنم، چیزی که به دست میآورم این لیست است هری
653
00:24:23,240 –> 00:24:25,850
رون هرمیون و جینی، اما میتوانم
654
00:24:25,850 –> 00:24:27,800
همینطور هم چاپ کنم. قبلاً
655
00:24:27,800 –> 00:24:29,270
اولین مورد از آنهایی را دیده ام که می گویند شما می دانید
656
00:24:29,270 –> 00:24:31,910
فقط نام براکت صفر را چاپ کنید، در
657
00:24:31,910 –> 00:24:33,740
این صورت من می خواهم برای مثال فقط هری را دریافت کنم،
658
00:24:33,740 –> 00:24:37,460
اما اکنون به یاد بیاورم که یک لیست
659
00:24:37,460 –> 00:24:39,620
قابل تغییر است، می توانم عناصری را
660
00:24:39,620 –> 00:24:41,510
که اتفاقاً در داخل وجود دارند تغییر دهم. از این لیست،
661
00:24:41,510 –> 00:24:45,020
بنابراین من می توانم نام هایی را بگویم که یک
662
00:24:45,020 –> 00:24:47,580
نام جدید را
663
00:24:47,580 –> 00:24:50,370
به عنوان مثال Rico اضافه می کنند و بنابراین لیست ها
664
00:24:50,370 –> 00:24:52,190
تعدادی متد یا توابع داخلی دارند
665
00:24:52,190 –> 00:24:55,380
که توابعی هستند که می توانم آنها را در یک
666
00:24:55,380 –> 00:24:57,720
لیست موجود برای دسترسی به
667
00:24:57,720 –> 00:24:59,160
عناصر خاص به لیست ها اجرا کنم. یا برای اصلاح
668
00:24:59,160 –> 00:25:01,020
لیست به روشی خاص ISM و در
669
00:25:01,020 –> 00:25:03,810
مورد لیست متد append
670
00:25:03,810 –> 00:25:05,730
متد یا تابعی است که می توانم اجرا کنم و
671
00:25:05,730 –> 00:25:07,770
فقط مقداری را به انتهای
672
00:25:07,770 –> 00:25:09,930
لیست موجود اضافه می کند، بنابراین Drako را به لیست اضافه کرده ام
673
00:25:09,930 –> 00:25:11,940
و تعدادی روش دیگر وجود دارد
674
00:25:11,940 –> 00:25:14,340
که می توانم در لیست ها از آنها استفاده کنم که یکی از
675
00:25:14,340 –> 00:25:16,710
آنها این است. به عنوان مثال مرتب سازی یک لیست بدون
676
00:25:16,710 –> 00:25:18,270
نیاز به نوشتن الگوریتم مرتب سازی خود
677
00:25:18,270 –> 00:25:20,040
به منظور مرتب سازی دنباله ای از اشیاء
678
00:25:20,040 –> 00:25:23,220
در پایتون، یک روش مرتب سازی داخلی وجود دارد
679
00:25:23,220 –> 00:25:24,810
که در لیست ها کار می کند که در آن من
680
00:25:24,810 –> 00:25:27,030
فقط می توانم نام ها را مرتب سازی نقطه ای بگویم که به
681
00:25:27,030 –> 00:25:28,470
طور خودکار همه چیز را مرتب می کند.
682
00:25:28,470 –> 00:25:30,750
لیست و حالا اگر همه آن
683
00:25:30,750 –> 00:25:33,210
نامها را چاپ کنم، بروید و آنها را چاپ کنید و از
684
00:25:33,210 –> 00:25:37,410
شر این عبارت چاپی قدیمی خلاص شوید، اکنون
685
00:25:37,410 –> 00:25:39,060
میبینیم که پنج نام چاپ
686
00:25:39,060 –> 00:25:40,590
شدهاند، زیرا من در ابتدا چهار عنصر
687
00:25:40,590 –> 00:25:42,660
در این لیست داشتم، اما بعد
688
00:25:42,660 –> 00:25:44,670
یک عدد اضافه کردم. مورد پنجم و اکنون توجه کنید که آنها در
689
00:25:44,670 –> 00:25:46,920
واقع به ترتیب حروف الفبا هستند که با Drako شروع می شود
690
00:25:46,920 –> 00:25:49,200
و با Ron ختم می شود زیرا من
691
00:25:49,200 –> 00:25:50,940
توانستم لیست را با تغییر
692
00:25:50,940 –> 00:25:53,280
ترتیبی که آن عناصر در واقع
693
00:25:53,280 –> 00:25:55,740
نشان می دهند مرتب کنم و بنابراین لیست می تواند در
694
00:25:55,740 –> 00:25:57,390
هر زمان که بخواهید قطعاً می تواند بسیار قدرتمند باشد. d برای ذخیره
695
00:25:57,390 –> 00:26:00,240
عناصر به ترتیب فهرست، قطعاً
696
00:26:00,240 –> 00:26:02,610
ابزار مفیدی است که پایتون در اختیار شما قرار می دهد،
697
00:26:02,610 –> 00:26:04,410
اگر به ترتیب عناصر اهمیتی نمی دهید
698
00:26:04,410 –> 00:26:06,630
و اگر می دانید که
699
00:26:06,630 –> 00:26:08,670
همه عناصر منحصر به فرد خواهند بود،
700
00:26:08,670 –> 00:26:10,380
می توانید از یک مجموعه استفاده کنید. که یکی دیگر از
701
00:26:10,380 –> 00:26:12,090
ساختارهای داده پایتون است که به روشهای مشابه کار میکند
702
00:26:12,090 –> 00:26:14,400
، نحو کمی
703
00:26:14,400 –> 00:26:16,650
متفاوت است، بنابراین بیایید یک مثال با
704
00:26:16,650 –> 00:26:19,050
آنهایی انجام دهیم که یک فایل جدید ایجاد میکنم به نام it
705
00:26:19,050 –> 00:26:22,350
sets pi و اجازه دهید ابتدا یک
706
00:26:22,350 –> 00:26:24,780
مجموعه خالی ایجاد کنم و میتوانیم این کار را فقط با گفتن انجام دهیم. s
707
00:26:24,780 –> 00:26:26,670
برابر با s متغیری
708
00:26:26,670 –> 00:26:29,040
خواهد بود که مجموعه من را ذخیره می کند و من می گویم set
709
00:26:29,040 –> 00:26:31,350
و سپس پرانتزهایی
710
00:26:31,350 –> 00:26:33,450
که فقط یک مجموعه خالی ایجاد می کند که
711
00:26:33,450 –> 00:26:36,240
اتفاقاً چیزی در داخل آن وجود ندارد، اکنون
712
00:26:36,240 –> 00:26:38,490
عناصری را به مجموعه اضافه می کنیم. بنابراین می
713
00:26:38,490 –> 00:26:41,520
توانم بگویم s dot add، بیایید عدد یک را
714
00:26:41,520 –> 00:26:43,950
به مجموعه اضافه کنیم، بیایید عدد دو
715
00:26:43,950 –> 00:26:46,260
را اضافه کنیم، بیایید عدد سه را
716
00:26:46,260 –> 00:26:48,960
اضافه کنیم و عدد چهار را اضافه کنیم و سپس می توانیم مجموعه را چاپ
717
00:26:48,960 –> 00:26:51,120
کنیم تا ببینیم در حال حاضر چه اتفاقی می افتد
718
00:26:51,120 –> 00:26:54,780
داخل مجموعه حالا وقتی این برنامه را اجرا می کنم
719
00:26:54,780 –> 00:26:59,670
Python set pi می بینیم که
720
00:26:59,670 –> 00:27:01,510
در داخل مجموعه چهار مقدار
721
00:27:01,510 –> 00:27:03,850
یک دو سه و چهار وجود دارد که
722
00:27:03,850 –> 00:27:05,650
اتفاقاً یک مرتبه بود، اما مجموعهها به طور طبیعی
723
00:27:05,650 –> 00:27:06,760
مرتب نمیشوند، آنها همیشه نمیتوانند
724
00:27:06,760 –> 00:27:07,900
ترتیب ترتیب را دنبال کنند،
725
00:27:07,900 –> 00:27:10,720
اما میتوانم به عنوان مثال اگر دوباره سه را اضافه کنم، اضافه کنم.
726
00:27:10,720 –> 00:27:13,690
به مجموعه اکنون
727
00:27:13,690 –> 00:27:16,000
دو بار سه به مجموعه اضافه کرده ام، یکی دو
728
00:27:16,000 –> 00:27:19,150
سه چهار و سپس دوباره سه وقتی که
729
00:27:19,150 –> 00:27:20,680
محتویات مجموعه را چاپ می کنم،
730
00:27:20,680 –> 00:27:23,140
هنوز فقط شامل عناصر یک دو
731
00:27:23,140 –> 00:27:25,570
سه چهار هیچ عنصری دو بار در مجموعه ظاهر نمی شود.
732
00:27:25,570 –> 00:27:27,430
پس از
733
00:27:27,430 –> 00:27:29,050
تعریف ریاضی مجموعه ای که در آن
734
00:27:29,050 –> 00:27:31,120
هیچ عنصری بیش از یک بار
735
00:27:31,120 –> 00:27:34,690
در یک مجموعه ظاهر نمی شود، می توانید
736
00:27:34,690 –> 00:27:36,490
عناصر را نیز از مجموعه ها حذف کنید، بنابراین اگر می
737
00:27:36,490 –> 00:27:38,410
خواستم عدد دو را از
738
00:27:38,410 –> 00:27:40,960
مجموعه حذف کنم، می توانم بگویم s dot حذف
739
00:27:40,960 –> 00:27:44,380
2 و سپس چاپ کنید تا بگوییم
740
00:27:44,380 –> 00:27:46,030
هر چیزی که در آن
741
00:27:46,030 –> 00:27:49,000
مجموعه وجود دارد را چاپ کنید و اکنون وقتی این
742
00:27:49,000 –> 00:27:52,780
برنامه را دوباره اجرا می کنم فقط 1 3 و 4 می گیرم زیرا
743
00:27:52,780 –> 00:27:55,600
2 را از مجموعه حذف کردم بنابراین مجموعه ها به شما اجازه می دهند
744
00:27:55,600 –> 00:27:57,850
به آنها اضافه کنید و از آنها حذف کنید. و همچنین
745
00:27:57,850 –> 00:28:00,820
تمام دنباله ها آیا r آنها رشته ها یا
746
00:28:00,820 –> 00:28:02,890
لیست ها یا مجموعه ها هستند به شما این امکان را می دهند که
747
00:28:02,890 –> 00:28:04,900
با
748
00:28:04,900 –> 00:28:06,400
استفاده از یک تابع تعبیه شده در
749
00:28:06,400 –> 00:28:09,640
پایتون به نام Len تعداد عناصر موجود در مجموعه را دریافت کنید، بنابراین Len طول یک دنباله را به شما می دهد
750
00:28:09,640 –> 00:28:11,950
، بنابراین
751
00:28:11,950 –> 00:28:14,110
تعداد آیتم های داخل یک لیست یا
752
00:28:14,110 –> 00:28:16,180
تعداد کاراکترهای داخل یک رشته یا
753
00:28:16,180 –> 00:28:17,970
تعداد عناصر داخل یک مجموعه و
754
00:28:17,970 –> 00:28:20,590
بنابراین اگر بخواهم تعداد
755
00:28:20,590 –> 00:28:22,390
عناصر موجود در مجموعه را پرینت بگیرم، ممکن است
756
00:28:22,390 –> 00:28:24,220
کاری شبیه به این را در یک رشته فرمت شده انجام دهم،
757
00:28:24,220 –> 00:28:29,140
بگویم مجموعه دارای مجموع تعداد است.
758
00:28:29,140 –> 00:28:32,050
المانها و چگونه میتوانم بدانم
759
00:28:32,050 –> 00:28:34,330
دوباره چند عنصر در داخل این
760
00:28:34,330 –> 00:28:36,180
پرانتزهای فرفری میتوانم هر
761
00:28:36,180 –> 00:28:38,560
عبارتی را در پایتون که
762
00:28:38,560 –> 00:28:41,200
میخواهم در این رشته جایگزین کنم، وارد کنم، بنابراین
763
00:28:41,200 –> 00:28:42,910
چند عنصر در مجموعه وجود دارد، میتوانم
764
00:28:42,910 –> 00:28:47,350
آن را با محاسبه Len ofs به دست بیاورم. کاری که
765
00:28:47,350 –> 00:28:49,900
من در اینجا انجام داده ام این است که با Len of
766
00:28:49,900 –> 00:28:51,700
s گفته ام که می خواهم طول مجموعه s را محاسبه کنم
767
00:28:51,700 –> 00:28:53,290
به عبارت دیگر چند
768
00:28:53,290 –> 00:28:55,210
عنصر در واقع در داخل آن مجموعه وجود دارد
769
00:28:55,210 –> 00:28:57,310
و سپس با استفاده از این علامت پرانتز فرفری
770
00:28:57,310 –> 00:28:59,650
می گویم بگیر. آن شماره را وصل کنید
771
00:28:59,650 –> 00:29:01,390
رشته است بنابراین ما می توانیم ببینیم که
772
00:29:01,390 –> 00:29:04,590
مجموعه تعدادی عنصر دارد، به عنوان
773
00:29:04,590 –> 00:29:07,140
مثال، حالا اگر من این برنامه
774
00:29:07,140 –> 00:29:10,240
پایتون را در PI اجرا کنم، می بینم که این
775
00:29:10,240 –> 00:29:11,920
سه عنصر را دریافت می کنم که اتفاقاً در
776
00:29:11,920 –> 00:29:13,870
حال حاضر داخل مجموعه هستند که یک و
777
00:29:13,870 –> 00:29:15,190
سپس سه هستند و سپس چهار
778
00:29:15,190 –> 00:29:17,250
و سپس به من می گوید که مجموعه دارای
779
00:29:17,250 –> 00:29:19,870
سه عنصر در داخل خود است که
780
00:29:19,870 –> 00:29:21,190
تعداد عناصری است که در حال حاضر در مجموعه هستند،
781
00:29:21,190 –> 00:29:24,400
بنابراین اکنون ما تعدادی
782
00:29:24,400 –> 00:29:26,110
ویژگی زبان مختلف را در داخل
783
00:29:26,110 –> 00:29:28,390
پایتون مشاهده کرده ایم که در متغیرهای خود می بینیم.
784
00:29:28,390 –> 00:29:30,100
شرایط را دیدهایم تا
785
00:29:30,100 –> 00:29:31,780
اگر چیزی درست است، اگر
786
00:29:31,780 –> 00:29:33,670
چیز دیگری درست باشد، میتوانیم کارهایی را انجام دهیم و
787
00:29:33,670 –> 00:29:35,380
برخی از ساختارهای دادهای را دیدهایم که در
788
00:29:35,380 –> 00:29:37,480
نحوه کار پایتون نقش دارند، فهرستها و
789
00:29:37,480 –> 00:29:39,370
مجموعهها و تاپلها و دیگر
790
00:29:39,370 –> 00:29:41,500
ساختارهای داده میتواند مفید باشد. همچنین و اکنون
791
00:29:41,500 –> 00:29:43,330
اجازه دهید نگاهی به یکی دیگر از ویژگیهای زبان برنامهنویسی پایتون بیندازیم که در
792
00:29:43,330 –> 00:29:44,830
793
00:29:44,830 –> 00:29:46,750
بسیاری از زبانهای برنامهنویسی مشترک است،
794
00:29:46,750 –> 00:29:48,130
ایده حلقه زدن اگر من میخواهم بتوانم
795
00:29:48,130 –> 00:29:50,890
کاری را چندین بار انجام دهم، پیش برویم
796
00:29:50,890 –> 00:29:53,620
و یک فایل جدید به نام حلقههای pi ایجاد کنم
797
00:29:53,620 –> 00:29:56,200
و اجازه دهید. فقط یک حلقه ساده ایجاد کنید، ساده
798
00:29:56,200 –> 00:29:57,880
ترین حلقه ای که می توانیم در پایتون ایجاد کنیم
799
00:29:57,880 –> 00:29:59,710
، فقط یک حلقه است که می تواند تعداد زیادی اعداد را بشمارد،
800
00:29:59,710 –> 00:30:02,020
بنابراین برای انجام آن
801
00:30:02,020 –> 00:30:03,840
چیزی که می توانم بگویم چیزی شبیه به این است
802
00:30:03,840 –> 00:30:10,630
برای من در 1 2 3 4 5 یا شاید من میخواهم
803
00:30:10,630 –> 00:30:13,240
0 1 2 3 4 5 را بشمارم تا شروع به شمارش
804
00:30:13,240 –> 00:30:18,610
با 0 کنم، بنابراین در اینجا سینتکس اساسی
805
00:30:18,610 –> 00:30:21,310
برای حلقه پایتون آمده است و این چیزی است که به نظر میرسد
806
00:30:21,310 –> 00:30:23,140
اینجا در همان
807
00:30:23,140 –> 00:30:25,480
خط اول در حال انجام است.
808
00:30:25,480 –> 00:30:27,580
براکت های مربعی که
809
00:30:27,580 –> 00:30:31,900
شامل 6 عدد 0 1 2 3 4 5 است و اکنون
810
00:30:31,900 –> 00:30:35,440
من یک حلقه for برای I در این لیست دارم
811
00:30:35,440 –> 00:30:37,450
و روشی که پایتون این را تفسیر می کند به این صورت است که می گویند
812
00:30:37,450 –> 00:30:40,090
این لیست را هر بار یک عنصر
813
00:30:40,090 –> 00:30:42,370
مرور کنید و برای هر عنصر آن عنصر را فراخوانی کنید.
814
00:30:42,370 –> 00:30:44,380
من میتوانستیم آن را
815
00:30:44,380 –> 00:30:45,970
هر چیزی بنامیم، اما در این مورد، من فقط یک
816
00:30:45,970 –> 00:30:47,740
انتخاب معمولی برای عددی هستم که
817
00:30:47,740 –> 00:30:49,390
مدام در حال افزایش است و ما
818
00:30:49,390 –> 00:30:53,080
اکنون مقدار I را برای هر
819
00:30:53,080 –> 00:30:55,960
تکرار این حلقه چاپ میکنیم، بنابراین میتوانیم
820
00:30:55,960 –> 00:31:00,430
اکنون این را امتحان کنیم و حلقههای پایتون پی را اجرا
821
00:31:00,430 –> 00:31:03,610
کنید، میبینیم 1 0 1 2 3 4 5 عالی همه اعداد را چاپ کرد
822
00:31:03,610 –> 00:31:05,860
از 0 تا 5 در یک
823
00:31:05,860 –> 00:31:08,320
زمان در عمل، هر چند اگر بخواهیم
824
00:31:08,320 –> 00:31:11,200
تا 5 را بشماریم یا
825
00:31:11,200 –> 00:31:13,630
مثلاً شش عدد را چاپ کنیم، فعلاً خوب است،
826
00:31:13,630 –> 00:31:15,370
اما اگر بخواهیم
827
00:31:15,370 –> 00:31:17,020
صد عدد یا هزار عدد چاپ
828
00:31:17,020 –> 00:31:19,780
کنیم، این کار انجام می شود. برای شروع خسته کننده شدن، بنابراین
829
00:31:19,780 –> 00:31:21,850
پایتون یک تابع داخلی به نام
830
00:31:21,850 –> 00:31:25,870
محدوده دارد که در آن می توانم بگویم من در محدوده 6
831
00:31:25,870 –> 00:31:28,620
دقیقاً همان چیزی را
832
00:31:28,620 –> 00:31:30,929
به دست می آورم که شش به این معنی است که محدوده ای از شش عدد را برای من دریافت کنید،
833
00:31:30,929 –> 00:31:32,880
بنابراین اگر از صفر شروع کنیم، از صفر شروع می کنیم.
834
00:31:32,880 –> 00:31:34,740
صفر تا پنج و
835
00:31:34,740 –> 00:31:36,720
سپس میتوانیم هر یک از
836
00:31:36,720 –> 00:31:39,330
عناصر داخل آن دنباله را چاپ کنیم، بنابراین اگر
837
00:31:39,330 –> 00:31:42,870
حلقههای پایتون را دوباره اجرا کنم، 0 1 2 3 4 5 دریافت میکنیم،
838
00:31:42,870 –> 00:31:46,380
بنابراین حلقهها ما را قادر میسازند تا روی هر نوع دنبالهای حلقه بزنیم.
839
00:31:46,380 –> 00:31:48,990
اگر دنباله یک
840
00:31:48,990 –> 00:31:51,450
لیست است، می توانم چیزی شبیه به این بگویم که
841
00:31:51,450 –> 00:31:55,080
اگر فهرستی از نام هایی مانند هری و رون و
842
00:31:55,080 –> 00:31:58,080
هرمواین داشته باشم و این لیست نام های من است،
843
00:31:58,080 –> 00:32:00,539
می توانم حلقه ای داشته باشم که می گوید برای هر
844
00:32:00,539 –> 00:32:03,720
نام در لیست نام های من، بیایید چاپ کنیم.
845
00:32:03,720 –> 00:32:06,750
به عنوان مثال، آن نام، بنابراین ما یک لیست داریم
846
00:32:06,750 –> 00:32:08,490
، لیستی به نام نام هایی است که
847
00:32:08,490 –> 00:32:10,080
در یک e حلقه می زنیم lement را در یک زمان و
848
00:32:10,080 –> 00:32:12,059
چاپ کردن آن در حال حاضر اگر برنامه را اجرا
849
00:32:12,059 –> 00:32:14,490
کنم، می بینم که سه نام در هر
850
00:32:14,490 –> 00:32:16,260
خط چاپ شده است و شما می توانید این کار را برای
851
00:32:16,260 –> 00:32:18,870
دنباله های دیگر نیز انجام دهید، شاید من فقط
852
00:32:18,870 –> 00:32:21,840
یک نام داشته باشم که به نام هری است و اکنون
853
00:32:21,840 –> 00:32:23,100
می توانم یک نام داشته باشم. خطی که می گوید شما می دانید
854
00:32:23,100 –> 00:32:26,460
برای هر کاراکتر در آن نام
855
00:32:26,460 –> 00:32:29,610
، اگر نامش باشد، کاراکتر را چاپ کنید.
856
00:32:29,610 –> 00:32:31,049
857
00:32:31,049 –> 00:32:32,970
858
00:32:32,970 –> 00:32:34,770
859
00:32:34,770 –> 00:32:36,390
860
00:32:36,390 –> 00:32:38,880
رشته تا بتوانم برنامه را اجرا کنم
861
00:32:38,880 –> 00:32:41,549
و در هر خط یکی از
862
00:32:41,549 –> 00:32:43,049
حروف را ببینم که اتفاقاً
863
00:32:43,049 –> 00:32:47,789
در داخل نام هری وجود دارد، بنابراین اکنون
864
00:32:47,789 –> 00:32:49,470
شرایطی را دیدهایم که حلقهها را دیدهایم و
865
00:32:49,470 –> 00:32:50,429
تعدادی ساختار داده مختلف را دیدهایم.
866
00:32:50,429 –> 00:32:53,429
ما لیستها و مجموعهها
867
00:32:53,429 –> 00:32:55,860
و همچنین تاپلها را دیدهایم. آخرین ساختار داده مهمی
868
00:32:55,860 –> 00:32:56,970
که میخواهیم به
869
00:32:56,970 –> 00:32:59,100
آنها نگاهی بیندازیم، دیکشنریهای پایتون هستند که
870
00:32:59,100 –> 00:33:00,929
همانطور که به خاطر میآورید، برخی از نگاشتها از
871
00:33:00,929 –> 00:33:03,210
کلیدهای مقادیر هستند، اگر بخواهم بتوانم
872
00:33:03,210 –> 00:33:04,980
چیزی را جستجو کنید که می توانم از Pyt استفاده کنم
873
00:33:04,980 –> 00:33:07,110
دیکشنری hon فقط به عنوان یک ساختار
874
00:33:07,110 –> 00:33:09,059
داده برای ذخیره این نوع مقادیر،
875
00:33:09,059 –> 00:33:11,399
بنابراین من یک فایل جدید به نام
876
00:33:11,399 –> 00:33:14,700
دیکشنری stop PI ایجاد می کنم و شاید بخواهم فرهنگ
877
00:33:14,700 –> 00:33:15,929
لغتی ایجاد کنم
878
00:33:15,929 –> 00:33:19,320
که بتواند بگوید هر یک از دانش آموزان در چه خانه ای قرار دارد، ردیابی کند.
879
00:33:19,320 –> 00:33:21,870
در هاگوارتز اتفاقاً در آنجا حضور
880
00:33:21,870 –> 00:33:23,520
دارم، بنابراین من ممکن است دیکشنری به نام خانهها داشته باشم
881
00:33:23,520 –> 00:33:26,970
و روشی که ما یک فرهن