در این مطلب، ویدئو pycse – محاسبات پایتون در علم و مهندسی – سرگرمی با توابع با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:17:50
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:08,400 –> 00:00:11,360
بسیار خوب امروز به pi cse خوش آمدید
2
00:00:11,360 –> 00:00:13,360
من فقط
3
00:00:13,360 –> 00:00:15,920
کمی در مورد تعریف توابع و
4
00:00:15,920 –> 00:00:19,039
گزینه های مختلفی که می توانید استفاده کنید صحبت می کنم
5
00:00:19,039 –> 00:00:21,760
و ایده اینجا این است که ما
6
00:00:21,760 –> 00:00:23,600
فقط با تابعی کار می کنیم که به ما می گوید
7
00:00:23,600 –> 00:00:26,000
آیا یک عدد است یا خیر حتی برای اینکه بتوانیم
8
00:00:26,000 –> 00:00:28,640
ایده هایی را در
9
00:00:28,640 –> 00:00:30,720
مورد چگونگی تعریف توابع بررسی کنیم،
10
00:00:30,720 –> 00:00:34,000
بنابراین یک عدد حتی اگر x mod 2 برابر
11
00:00:34,000 –> 00:00:36,239
با 0 باشد، آن را بر 2 تقسیم کنید و
12
00:00:36,239 –> 00:00:38,719
باقی نمانده
13
00:00:38,719 –> 00:00:40,800
باشد، اجازه دهید فقط به چند مثال نگاهی بیندازیم
14
00:00:40,800 –> 00:00:44,000
تا متوجه شویم که این بنابراین،
15
00:00:44,000 –> 00:00:46,960
چهار حالت دو صفر خواهد بود
16
00:00:46,960 –> 00:00:51,199
و سه مد دو، یک
17
00:00:51,199 –> 00:00:53,280
درست است، بنابراین این ایده ای است که
18
00:00:53,280 –> 00:00:55,520
می خواهیم این چیزها را در یک
19
00:00:55,520 –> 00:00:57,760
تابع ساده قرار دهیم، بنابراین بیایید ساده ترین را انجام دهیم
20
00:00:57,760 –> 00:00:59,120
21
00:00:59,120 –> 00:01:01,680
و فقط بگوییم def
22
00:01:01,680 –> 00:01:03,359
حتی بگیر یک عدد x
23
00:01:03,359 –> 00:01:04,319
و
24
00:01:04,319 –> 00:01:07,760
بیایید x mod 2 را
25
00:01:07,760 –> 00:01:11,040
برابر با 0 برگردانیم. بنابراین سادهترین تابع
26
00:01:11,040 –> 00:01:13,040
، کلمه کلیدی def را داریم، نام تابع را
27
00:01:13,040 –> 00:01:15,759
میدهیم، حتی یک آرگومان واحد x میگیرد، از
28
00:01:15,759 –> 00:01:17,920
آن آرگومان x در اینجا استفاده میکنیم و اگر
29
00:01:17,920 –> 00:01:19,119
برابر با دو باشد، میچرخانیم
30
00:01:19,119 –> 00:01:23,200
و بنابراین اجازه دهید اکنون آن را امتحان کنید، حتی یک چهار
31
00:01:23,200 –> 00:01:24,720
می گوید
32
00:01:24,720 –> 00:01:28,479
حتی از 4.1 باید درست باشد ay نادرست است،
33
00:01:28,479 –> 00:01:30,880
پس این سادهترین مورد است،
34
00:01:30,880 –> 00:01:34,000
و به نظر میرسد که خیلی خوب کار میکند،
35
00:01:34,000 –> 00:01:36,479
اما اوه، چه کار دیگری میتوانیم انجام دهیم،
36
00:01:36,479 –> 00:01:38,479
اگر میخواستیم دو عدد داشته باشیم، پس
37
00:01:38,479 –> 00:01:41,680
اگر بخواهم بگویم
38
00:01:41,680 –> 00:01:44,560
x این زوج است و چه میخواهم. is
39
00:01:44,560 –> 00:01:46,240
برای هر یک از اینها درست است،
40
00:01:46,240 –> 00:01:48,799
بنابراین در اینجا می بینیم که حتی فقط یک آرگومان موقعیتی می گیرد
41
00:01:48,799 –> 00:01:51,280
اما من دو
42
00:01:51,280 –> 00:01:54,159
تا دادم بنابراین به این آرگومان موقعیتی گفته می شود
43
00:01:54,159 –> 00:01:56,880
که مقدار پیش فرض ندارد و در اینجا
44
00:01:56,880 –> 00:01:59,040
دو آرگومان موقعیتی داده ایم اما
45
00:01:59,040 –> 00:02:00,560
فقط یک آرگومان را تعریف کرده ایم.
46
00:02:00,560 –> 00:02:02,399
بنابراین ما چند گزینه
47
00:02:02,399 –> 00:02:04,079
داریم، یکی اینکه میتوانیم
48
00:02:04,079 –> 00:02:08,318
x1 کاما x2 را در اینجا اضافه کنیم و سپس میتوانیم
49
00:02:08,318 –> 00:02:10,000
این کار را انجام دهیم، اما
50
00:02:10,000 –> 00:02:12,000
اگر 3
51
00:02:12,000 –> 00:02:14,959
یا 4 یا 5 داشته باشیم، کار نمیکند. بنابراین نمیتوانیم
52
00:02:14,959 –> 00:02:17,520
به طور مستقیم از آرگومانهای موقعیتی استفاده کنیم.
53
00:02:17,520 –> 00:02:19,599
اگر اکنون بخواهیم
54
00:02:19,599 –> 00:02:22,480
تعداد دلخواه آرگومان انجام دهیم،
55
00:02:22,480 –> 00:02:25,280
میتوانیم رویکردی را در نظر بگیریم که در آن از یک آرایه استفاده میکنیم،
56
00:02:25,280 –> 00:02:26,400
57
00:02:26,400 –> 00:02:30,000
بنابراین بیایید numpy را در اینجا وارد کنیم
58
00:02:30,000 –> 00:02:33,760
و اگر من این را به یک آرایه
59
00:02:33,760 –> 00:02:36,800
تبدیل کنم، چیزی جادویی اتفاق میافتد
60
00:02:36,800 –> 00:02:38,959
و آن این است که برای هر دو به درستی باز میگردد.
61
00:02:38,959 –> 00:02:41,280
از این ها و ما می توانیم این را هر تعداد
62
00:02:41,280 –> 00:02:44,400
از عناصر ما خواسته
63
00:02:44,400 –> 00:02:47,200
و ما به طور خودکار
64
00:02:47,200 –> 00:02:49,040
65
00:02:49,040 –> 00:02:51,920
مقدار عنصر را برای این دریافت می کنیم،
66
00:02:51,920 –> 00:02:54,000
بنابراین بسیار راحت است، اما
67
00:02:54,000 –> 00:02:56,480
اگر فقط یک لیست را در اینجا قرار دهید باید از یک آرایه استفاده کنید،
68
00:02:56,480 –> 00:03:00,319
درست کار نمی کند
69
00:03:00,319 –> 00:03:03,040
، به این دلیل است که این
70
00:03:03,040 –> 00:03:05,360
مد عملگر در یک لیست تعریف نشده است.
71
00:03:05,360 –> 00:03:09,599
در uh روی یک آرایه تعریف شده است،
72
00:03:10,720 –> 00:03:12,959
بنابراین بیایید نگاهی
73
00:03:12,959 –> 00:03:15,440
به چند گزینه بیندازیم که میتوانیم
74
00:03:15,440 –> 00:03:18,879
از آنها برای تغییر این تابع استفاده کنیم،
75
00:03:18,879 –> 00:03:21,200
بنابراین فرض کنید میخواهم بتوانم یک
76
00:03:21,200 –> 00:03:24,640
عدد یا یک لیست یا یک آرایه را ارسال کنم،
77
00:03:24,640 –> 00:03:27,840
بیایید این را اصلاح کنیم. در یک شکل بسیار کلاسیک
78
00:03:27,840 –> 00:03:31,120
و بگویید که x برابر است با آرایه نقطهای np
79
00:03:31,120 –> 00:03:32,640
80
00:03:32,640 –> 00:03:34,319
از x
81
00:03:34,319 –> 00:03:37,280
و حالا بیایید یک جفت از اینها را امتحان کنیم، زوج
82
00:03:37,280 –> 00:03:38,799
از سه
83
00:03:38,799 –> 00:03:41,120
هنوز نادرست،
84
00:03:41,120 –> 00:03:43,760
حتی
85
00:03:43,760 –> 00:03:47,200
سه کاما چهار،
86
00:03:47,200 –> 00:03:49,519
حالا میگیریم اوه، حدس میزنم این نتایج
87
00:03:49,519 –> 00:03:51,120
کمی گیجکننده است.
88
00:03:51,120 –> 00:03:52,400
89
00:03:52,400 –> 00:03:54,799
90
00:03:57,920 –> 00:03:59,599
ببینید که ما یک false داریم و سپس
91
00:03:59,599 –> 00:04:02,560
یک آرایه از false و true داریم،
92
00:04:02,560 –> 00:04:05,360
بنابراین این یکی برای یک
93
00:04:05,360 –> 00:04:08,480
عدد معمولی یا لیستی از اعداد
94
00:04:08,480 –> 00:04:10,640
کار می کند و همچنین
95
00:04:10,640 –> 00:04:14,360
روی آرایه ای از اعداد کار می کند
96
00:04:19,358 –> 00:04:22,320
و نکته کلیدی در اینجا فقط
97
00:04:22,320 –> 00:04:24,320
این است خط اضافی که در آن مطمئن
98
00:04:24,320 –> 00:04:27,759
می شویم x به صورت arr ریخته شده است در
99
00:04:27,759 –> 00:04:30,320
هر صورت، خواه یک عدد باشد یا یک لیست
100
00:04:30,320 –> 00:04:34,160
یا یک آرایه، به طوری که به ما امکان می
101
00:04:34,160 –> 00:04:37,520
دهد همه آن موقعیت های مختلف را مدیریت
102
00:04:37,520 –> 00:04:39,520
کنیم، ممکن است شما نمی خواهید
103
00:04:39,520 –> 00:04:41,680
این کار را به طور منظم انجام دهید و واقعاً
104
00:04:41,680 –> 00:04:43,360
می خواهید
105
00:04:43,360 –> 00:04:45,759
یک آرایه ای از آرگومان ها
106
00:04:45,759 –> 00:04:48,160
uh یا تعداد دلخواه آرگومان برای
107
00:04:48,160 –> 00:04:49,520
uh برای این
108
00:04:49,520 –> 00:04:51,199
و اینکه شما همان تعداد
109
00:04:51,199 –> 00:04:53,280
درست و نادرست را دریافت می کنید،
110
00:04:53,280 –> 00:04:55,680
بنابراین یک نکته ظریف در اینجا این است که ما همیشه
111
00:04:55,680 –> 00:04:56,560
112
00:04:56,560 –> 00:04:58,800
یا اشتباه بولی را دریافت می کنیم یا یک
113
00:04:58,800 –> 00:05:00,639
آرایه به عنوان خروجی دریافت می کنیم
114
00:05:00,639 –> 00:05:02,960
و بنابراین اکنون بیایید در مورد اینکه چگونه می توانیم
115
00:05:02,960 –> 00:05:06,240
تعداد دلخواه آرگومان های موقعیتی داشته باشیم،
116
00:05:06,240 –> 00:05:08,720
117
00:05:08,880 –> 00:05:10,479
بنابراین
118
00:05:10,479 –> 00:05:12,880
نحو جدید uh که باید بدانید این است
119
00:05:12,880 –> 00:05:15,199
که ما حتی
120
00:05:15,199 –> 00:05:16,800
با یک ستاره
121
00:05:16,800 –> 00:05:19,440
uh star x
122
00:05:19,440 –> 00:05:22,479
و چه ستاره x را در اینجا تعریف می کنیم صحبت کنیم. do
123
00:05:22,479 –> 00:05:23,840
این است
124
00:05:23,840 –> 00:05:26,160
که نحوی برای تعداد دلخواه از
125
00:05:26,160 –> 00:05:28,160
کلمات کلیدی موقعیتی است،
126
00:05:28,160 –> 00:05:30,720
بنابراین ابتدا ما فقط می خواهیم uh x را
127
00:05:30,720 –> 00:05:32,479
در اینجا چاپ کنیم تا بتوانید ببینید چه
128
00:05:32,479 –> 00:05:34,320
اتفاقی می افتد،
129
00:05:34,320 –> 00:05:37,199
بنابراین اگر حتی یکی را بگویم،
130
00:05:37,199 –> 00:05:39,600
می بینیم که مقدار x
131
00:05:39,600 –> 00:05:41,759
که در آن ارسال شده است یک تاپل است و
132
00:05:41,759 –> 00:05:43,440
مقدار یک را دارد
133
00:05:43,440 –> 00:05:44,960
و اگر
134
00:05:44,960 –> 00:05:47,759
دو را بگذارم بیایید سه کاما چهار را
135
00:05:47,759 –> 00:05:50,000
فرض کنیم، سپس برای هر یک از اینها فقط یک تاپل داریم،
136
00:05:50,000 –> 00:05:51,520
137
00:05:51,520 –> 00:05:53,039
بنابراین
138
00:05:53,039 –> 00:05:55,039
کاری که اکنون میخواهیم در
139
00:05:55,039 –> 00:05:57,440
داخل تابع خود انجام دهیم این است که بدانیم ستاره x
140
00:05:57,440 –> 00:05:59,680
یک تاپلی خواهد بود که حاوی
141
00:05:59,680 –> 00:06:01,919
تمام مقادیری است که ما داریم. علاقه مندیم
142
00:06:01,919 –> 00:06:04,479
و ما چند گزینه داریم، امم،
143
00:06:04,479 –> 00:06:08,160
بیایید درک لیست را روی
144
00:06:08,160 –> 00:06:09,280
آن تاپل
145
00:06:09,280 –> 00:06:13,039
انجام دهیم و برمی گردیم
146
00:06:13,039 –> 00:06:14,720
فرض کنیم
147
00:06:14,720 –> 00:06:20,319
آیتم mod 2 برابر با صفر
148
00:06:20,319 –> 00:06:21,840
برای مورد
149
00:06:21,840 –> 00:06:22,960
در
150
00:06:22,960 –> 00:06:25,199
x
151
00:06:26,000 –> 00:06:27,759
خوب است و این
152
00:06:27,759 –> 00:06:29,919
لیستی از false true false true را برمی گرداند. در این
153
00:06:29,919 –> 00:06:33,199
حالت و ما یک عنصر برای هر یک دریافت می
154
00:06:33,199 –> 00:06:34,880
کنیم که به روشی می توانیم این کار را انجام
155
00:06:34,880 –> 00:06:37,840
دهیم به روشی دیگر تبدیل این به uh به
156
00:06:37,840 –> 00:06:40,800
آرایه و انجام کارهایی که قبلا انجام دادیم، بیایید
157
00:06:40,800 –> 00:06:44,720
نگاهی به uh در آن گزینه
158
00:06:45,199 –> 00:06:49,840
بیندازیم تا ما دوباره میگوییم ستاره x در اینجا
159
00:06:50,000 –> 00:06:51,280
و سپس
160
00:06:51,280 –> 00:06:54,479
x برابر است با آرایه نقطهای x
161
00:06:54,479 –> 00:06:57,680
و سپس دوباره میتوانیم x
162
00:06:57,680 –> 00:06:59,280
mod 2 را
163
00:06:59,280 –> 00:07:02,319
برابر با
164
00:07:02,319 –> 00:07:03,360
0 برگردانیم. بنابراین
165
00:07:03,360 –> 00:07:05,360
در اینجا میتوانیم دوباره
166
00:07:05,360 –> 00:07:07,919
کلمات کلیدی دلخواه را ارسال کنیم و اکنون باید
167
00:07:07,919 –> 00:07:10,479
آرایهای را برگردانیم که عنصر- است. عاقلانه
168
00:07:10,479 –> 00:07:12,880
برای مد در هر یک
169
00:07:12,880 –> 00:07:15,440
که فقط یکی از ویژگی های شماره است py که
170
00:07:15,440 –> 00:07:18,639
عملگر mod برای یک آرایه تعریف شده است،
171
00:07:18,639 –> 00:07:21,199
اما به یاد داشته باشید که برای یک لیست کاملاً تعریف نشده است،
172
00:07:21,199 –> 00:07:23,520
173
00:07:23,599 –> 00:07:25,919
بنابراین چند کار دیگر که میتوانیم
174
00:07:25,919 –> 00:07:27,599
درباره انجام آن فکر کنیم، میتوانیم
175
00:07:27,599 –> 00:07:29,599
آرگومانهای کلمه کلیدی را اضافه کنیم،
176
00:07:29,599 –> 00:07:32,400
بنابراین اکنون که میتوانیم اعداد دلخواه
177
00:07:32,400 –> 00:07:35,520
از آنها را اضافه کنیم، ممکن است خوب باشد. داشتن یک
178
00:07:35,520 –> 00:07:37,759
گزینه کاهش که در آن به جای اینکه
179
00:07:37,759 –> 00:07:39,199
همه اینها
180
00:07:39,199 –> 00:07:41,039
برگردانده شوند، بتوانیم آن را به یک واحد کاهش دهیم،
181
00:07:41,039 –> 00:07:42,560
182
00:07:42,560 –> 00:07:45,360
برای مثال همه آنها زوج هستند یا
183
00:07:45,360 –> 00:07:47,680
همه آنها فرد هستند
184
00:07:47,680 –> 00:07:49,280
، حدس می زنم در این مورد همه آنها زوج باشند،
185
00:07:49,280 –> 00:07:51,360
186
00:07:51,360 –> 00:07:52,800
پس بیایید به عقب برگردیم
187
00:07:52,800 –> 00:07:53,840
188
00:07:53,840 –> 00:07:56,160
به سادهتر Uh یکی که فقط یک
189
00:07:56,160 –> 00:08:00,560
آرایه میگیرد و بیایید تابع خود را تعریف کنیم، حتی
190
00:08:00,560 –> 00:08:02,879
اگر طول میکشد، x را میگیرد که
191
00:08:02,879 –> 00:08:05,120
میتواند یک عدد یا یک آرایه باشد و بیایید
192
00:08:05,120 –> 00:08:06,479
بگوییم کاهش
193
00:08:06,479 –> 00:08:10,720
بیایید یک کلمه کلیدی اضافه کنیم کاهش برابر
194
00:08:11,280 –> 00:08:12,479
نادرست است،
195
00:08:12,479 –> 00:08:14,479
بنابراین این یک کلمه کلیدی است آرگومان اکنون
196
00:08:14,479 –> 00:08:16,479
چون یک نام کاهش دارد و
197
00:08:16,479 –> 00:08:18,639
یک گزینه پیش فرض
198
00:08:18,639 –> 00:08:22,400
دارد، پس می گوییم x برابر است با np dot array
199
00:08:22,400 –> 00:08:24,160
x
200
00:08:24,160 –> 00:08:25,199
و حالا یک
201
00:08:25,199 –> 00:08:28,879
شرط شرطی داریم که
202
00:08:29,120 –> 00:08:32,719
return np dot تمام
203
00:08:32,719 –> 00:08:34,958
204
00:08:34,958 –> 00:08:37,200
x درصد
205
00:08:37,200 –>