در این مطلب، ویدئو ایجاد پیوندهای پایتون با pybind11 و SofaPython3 با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 1:53:26
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,880 –> 00:00:03,679
خیلی خوب، پس امروز
2
00:00:03,679 –> 00:00:07,200
اوم من به
3
00:00:07,200 –> 00:00:10,320
خوبی می گذرم، ابتدا با اصول
4
00:00:10,320 –> 00:00:14,240
اولیه uh python شروع می کنم بدون اینکه
5
00:00:14,240 –> 00:00:17,279
مستقیماً به پیوندها بروم، فقط می
6
00:00:17,279 –> 00:00:21,039
خواهم یک مرور کلی بسیار سریع
7
00:00:21,039 –> 00:00:24,480
از
8
00:00:24,480 –> 00:00:28,000
ماژول python چیست و python چیست انجام دهم بسته بندی
9
00:00:28,000 –> 00:00:31,760
چگونگی آنها توسط پایتون پیدا می شود
10
00:00:31,760 –> 00:00:34,480
وقتی که شما یک ایمپورت را در مفسر پایتون خود انجام می دهید
11
00:00:34,480 –> 00:00:36,079
12
00:00:36,079 –> 00:00:38,559
و من می خواهم خیلی سریع از این طریق عبور کنم
13
00:00:38,559 –> 00:00:39,520
زیرا
14
00:00:39,520 –> 00:00:42,079
خواهید دید که وقتی پیوندهای پایتون ایجاد می
15
00:00:42,079 –> 00:00:44,480
کنید در واقع
16
00:00:44,480 –> 00:00:47,280
ماژول پایتون و
17
00:00:47,280 –> 00:00:48,640
بسته پایتون را ایجاد می کنید.
18
00:00:48,640 –> 00:00:52,320
19
00:00:52,320 –> 00:00:55,360
زمانی که در حال نوشتن یک فایل پایتون برای
20
00:00:55,360 –> 00:00:56,800
ایجاد یک ماژول هستید، دقیقاً مشابه پایتون است، بنابراین
21
00:00:56,800 –> 00:00:58,960
به هر حال من این را به شما نشان خواهم داد و سپس
22
00:00:58,960 –> 00:00:59,840
23
00:00:59,840 –> 00:01:03,199
24
00:01:03,199 –> 00:01:04,879
25
00:01:04,879 –> 00:01:08,000
بدون رفتن به مبل، برخی از اتصالات را با tiebine 11 ایجاد می کنیم و سپس
26
00:01:08,000 –> 00:01:09,119
این کار را انجام می دهیم. همینطور با
27
00:01:09,119 –> 00:01:13,600
پلاگین مبل، بنابراین ما پلاگین های مبل را متصل می کنیم
28
00:01:13,600 –> 00:01:14,799
29
00:01:14,799 –> 00:01:18,320
و دلیل آن ساده است، اوه ما از
30
00:01:18,320 –> 00:01:20,960
آن با مبل پایتون 3 لوله 11 استفاده می
31
00:01:20,960 –> 00:01:23,280
کنیم، بنابراین واقعاً چیزی بیش از
32
00:01:23,280 –> 00:01:26,799
یک لوله 11 نیست که در آن پلاگین های مبل پایتون
33
00:01:26,799 –> 00:01:28,799
3 و whe اگر
34
00:01:28,799 –> 00:01:31,600
پیوندهایی را به افزونه خود اضافه می کنید،
35
00:01:31,600 –> 00:01:34,000
در واقع فقط از بانک پی 11 استفاده می کنید. بنابراین
36
00:01:34,000 –> 00:01:38,479
خواهیم دید که در یک
37
00:01:38,479 –> 00:01:42,000
لحظه به چت عمومی نگاه نمی کنم،
38
00:01:42,000 –> 00:01:45,280
بنابراین لطفاً اگر کسی
39
00:01:45,280 –> 00:01:47,439
سؤالی دارد یا نمی پرسد به من بگویید. دریغ نکنید که
40
00:01:47,439 –> 00:01:49,680
قطع
41
00:01:49,680 –> 00:01:53,840
کنید خیلی خوب است میکروفون من خوب است می توانید
42
00:01:53,840 –> 00:01:54,320
همه
43
00:01:54,320 –> 00:01:57,600
صدایم را خوب بشنوید لطفاً
44
00:01:57,600 –> 00:02:00,079
بله عالی من فقط خنده دار هستم که می گویم
45
00:02:00,079 –> 00:02:00,719
خوب است
46
00:02:00,719 –> 00:02:02,960
خوب وجود ندارد دیگر هیچ پژواک وجود ندارد دیگر
47
00:02:02,960 –> 00:02:03,920
صدا عالی
48
00:02:03,920 –> 00:02:07,439
است ادامه دهید خوب عالی است
49
00:02:07,439 –> 00:02:10,800
بسیار خوب پس بیایید شروع کنیم بیایید ایجاد کنیم
50
00:02:10,800 –> 00:02:11,280
فقط
51
00:02:11,280 –> 00:02:14,560
یک فایل اول uh پایتون درست است، بنابراین ما
52
00:02:14,560 –> 00:02:16,000
این را
53
00:02:16,000 –> 00:02:19,920
um جبر می نامیم،
54
00:02:20,000 –> 00:02:23,040
بنابراین این فایل جبری در اینجا در
55
00:02:23,040 –> 00:02:26,319
واقع همان چیزی است که ما به آن ماژول پایتون می گوییم
56
00:02:26,319 –> 00:02:30,879
um و در داخل آن
57
00:02:30,879 –> 00:02:33,920
می توانید تابع را تعریف کنید، بنابراین اجازه دهید ابتدا
58
00:02:33,920 –> 00:02:37,599
numpy را وارد کنیم زیرا ما در حال تعریف یک
59
00:02:37,599 –> 00:02:40,720
ماژول جبر بنابراین ما می توانیم ضربدر را
60
00:02:40,720 –> 00:02:41,920
به عنوان مثال
61
00:02:41,920 –> 00:02:44,959
با دو گیاه تعریف کنیم
62
00:02:44,959 –> 00:02:49,360
که با
63
00:02:49,360 –> 00:02:52,640
عرض پوزش numpy که متقاطع برمی گردند
64
00:02:54,160 –> 00:02:57,920
این را کمی بالا قرار دهید
65
00:02:59,519 –> 00:03:03,599
و بنابراین اگر
66
00:03:03,599 –> 00:03:05,440
اینجا را در پایین صفحه من ببینید یک
67
00:03:05,440 –> 00:03:07,680
ترمینال است من
68
00:03:07,680 –> 00:03:10,959
مستقیماً در جایی هستم که این فایل پایتون در
69
00:03:10,959 –> 00:03:14,400
آن قرار دارد. جبر من را داشته باش اگر
70
00:03:14,400 –> 00:03:18,239
پایتون را باز کنم، می بینید که می
71
00:03:18,239 –> 00:03:22,239
توانم جبر را وارد کنم، بنابراین ماژول um python خود را وارد کردم
72
00:03:22,239 –> 00:03:26,159
و می توانم ببینم
73
00:03:26,159 –> 00:03:27,920
که تابعی به نام وجود دارد،
74
00:03:27,920 –> 00:03:31,280
بنابراین همه چیز در اینجا خوب است،
75
00:03:31,280 –> 00:03:34,080
من um خود
76
00:03:34,319 –> 00:03:39,200
را ایجاد کردم تا ماژول پایتون خود را اضافه کنم
77
00:03:39,200 –> 00:03:42,959
توابع مختلف، به عنوان مثال
78
00:03:42,959 –> 00:03:47,360
ام، بیایید یک نرمال سازی انجام دهیم
79
00:03:47,360 –> 00:03:51,680
که یک بردار واحد را عادی می
80
00:03:51,680 –> 00:03:55,680
کند، خب،
81
00:03:55,760 –> 00:03:58,159
پس چیزی که می خواستم به شما نشان
82
00:03:58,159 –> 00:03:58,879
دهم یک
83
00:03:58,879 –> 00:04:02,640
بسته پایتون است، بنابراین یک بسته پایتون در واقع این است
84
00:04:02,640 –> 00:04:06,879
که من این مثال را
85
00:04:06,879 –> 00:04:10,560
a فقط یک دایرکتوری
86
00:04:10,560 –> 00:04:13,280
است، چیزی بیشتر نیست. از یک دایرکتوری که
87
00:04:13,280 –> 00:04:14,080
حاوی
88
00:04:14,080 –> 00:04:17,918
یک فایل init که فایل pi است،
89
00:04:17,918 –> 00:04:20,159
بنابراین
90
00:04:21,040 –> 00:04:24,400
در داخل این بسته پایتون،
91
00:04:24,400 –> 00:04:27,840
این یک بسته پایتون است که
92
00:04:27,840 –> 00:04:30,880
میتواند ماژولهای پایتون را قرار
93
00:04:30,880 –> 00:04:34,000
دهد، اجازه دهید فایلهای جبر خود را در اینجا قرار دهیم
94
00:04:34,000 –> 00:04:36,560
که یک مثال است، بنابراین اکنون من نمونه بسته الگوی خود را دارم
95
00:04:36,560 –> 00:04:37,919
96
00:04:37,919 –> 00:04:41,040
که حاوی ماژولهایی است که شامل
97
00:04:41,040 –> 00:04:44,400
98
00:04:44,400 –> 00:04:48,240
در داخل این بسته عمل می کند، من می توانم یک
99
00:04:48,240 –> 00:04:52,080
ماژول پایتون دیگر ایجاد
100
00:04:52,080 –> 00:04:56,400
کنم که می توانم آن را هندسه بنامم و آن را
101
00:04:56,400 –> 00:04:58,560
کپی می کنم تا
102
00:04:58,560 –> 00:05:00,400
کمی سریعتر پیش برود، اما
103
00:05:00,400 –> 00:05:03,199
در داخل این یکی می توانم داشته باشم من
104
00:05:03,199 –> 00:05:04,080
105
00:05:04,080 –> 00:05:07,759
میتوانم ماژولهای جبر خود را وارد کنم، بنابراین نقطه فقط در اینجا
106
00:05:07,759 –> 00:05:12,160
به معنای وارد کردن جبر از
107
00:05:12,160 –> 00:05:14,800
بسته پایتون فعلی به سمت راست است و از این
108
00:05:14,800 –> 00:05:15,520
ماژول
109
00:05:15,520 –> 00:05:18,240
ضربدر و توابع عادیسازی را وارد میکنم
110
00:05:18,240 –> 00:05:19,199
111
00:05:19,199 –> 00:05:22,000
و در داخل این ماژول پایتون هندسه
112
00:05:22,000 –> 00:05:23,039
میتوانم کلاسها را نیز تعریف کنم
113
00:05:23,039 –> 00:05:27,680
و بله،
114
00:05:27,680 –> 00:05:29,919
پس دلیل اینکه چرا من میخواستم این را به شما نشان دهم
115
00:05:29,919 –> 00:05:30,880
116
00:05:30,880 –> 00:05:33,440
زیرا وقتی میخواهید پیوندهای پایتون ایجاد کنید، متوجه میشویم
117
00:05:33,440 –> 00:05:35,280
118
00:05:35,280 –> 00:05:38,320
که واقعاً همان چیزهایی است،
119
00:05:38,320 –> 00:05:41,520
درست مثل اینکه اگر به اینجا
120
00:05:41,520 –> 00:05:45,280
بروم اگر به ترمینال خود برگردم اگر وارد
121
00:05:45,280 –> 00:05:45,680
122
00:05:45,680 –> 00:05:49,039
فهرست اصلی خود شوم و عنوان را باز کنم
123
00:05:49,039 –> 00:05:50,000
در اینجا
124
00:05:50,000 –> 00:05:53,919
من سعی خواهم کرد جبر را وارد کنم،
125
00:05:53,919 –> 00:05:56,880
بدیهی است که نمی توانم آن را پیدا کنم
126
00:05:56,880 –> 00:05:57,680
زیرا من
127
00:05:57,680 –> 00:06:00,080
دیگر در همان فهرست
128
00:06:00,080 –> 00:06:01,840
فایل جبر خود نیستم،
129
00:06:01,840 –> 00:06:05,280
اگر بخواهم بسته خود را وارد
130
00:06:05,280 –> 00:06:08,160
کنم، همان چیزی است که درست است،
131
00:06:08,160 –> 00:06:09,840
بنابراین
132
00:06:09,840 –> 00:06:11,780
چگونه می توانم به پایتون بگویم
133
00:06:11,780 –> 00:06:13,440
[موسیقی]
134
00:06:13,440 –> 00:06:15,919
همه این ماژولها و بستهها کجا هستند،
135
00:06:15,919 –> 00:06:17,360
136
00:06:17,360 –> 00:06:20,800
بنابراین اگر این را در پایتون وارد کنم،
137
00:06:20,800 –> 00:06:21,360
چیزی
138
00:06:21,360 –> 00:06:24,880
به نام مسیرها وجود دارد،
139
00:06:24,880 –> 00:06:27,360
بنابراین sysdotpaths لیستی از مسیرها را به شما میدهد
140
00:06:27,360 –> 00:06:28,240
و
141
00:06:28,240 –> 00:06:30,880
این دایرکتوریهای واقعی است که
142
00:06:30,880 –> 00:06:32,319
پایتون به دنبال آن است.
143
00:06:32,319 –> 00:06:36,319
پکیج r و ماژولها
144
00:06:36,319 –> 00:06:38,240
در حال حاضر این بسیار مهم است زیرا من
145
00:06:38,240 –> 00:06:40,080
این سؤال را زیاد داشتم که چگونه
146
00:06:40,080 –> 00:06:43,520
پایتون میتواند اتصالات سرفک
147
00:06:43,520 –> 00:06:44,240
148
00:06:44,240 –> 00:06:47,440
را پیدا کند چگونه میتواند پیوندهای my python را
149
00:06:47,440 –> 00:06:50,000
از پلاگینهای من پیدا کند،
150
00:06:50,000 –> 00:06:52,160
بنابراین داخل این دایرکتوری نگاه میکند
151
00:06:52,160 –> 00:06:54,479
و وجود دارد چند راه برای
152
00:06:54,479 –> 00:06:57,599
نشان دادن یا اضافه کردن دایرکتوری ها
153
00:06:57,599 –> 00:07:00,720
در اینجا شما می توانید من فقط از
154
00:07:00,720 –> 00:07:03,759
این یک آرایه پایتون
155
00:07:03,759 –> 00:07:04,960
استفاده می کنم تا بتوانید از
156
00:07:04,960 –> 00:07:09,599
آرایه مسیر پایتون استفاده کنید و در اینجا
157
00:07:09,599 –> 00:07:14,800
می توانید مسیر را به روش دیگری که می توانید به دایرکتوری اضافه کنید
158
00:07:14,800 –> 00:07:17,599
این کار را انجام دهید من
159
00:07:17,599 –> 00:07:19,599
پایتون را در اینجا ترک خواهم کرد
160
00:07:19,599 –> 00:07:24,000
پایتون به داخل مسیر پایتون نگاه می کند
161
00:07:24,000 –> 00:07:27,199
um متغیر محیط مسیر پایتون را هدایت می
162
00:07:27,199 –> 00:07:30,720
کند بنابراین می توانید از این
163
00:07:30,720 –> 00:07:31,680
برای اضافه
164
00:07:31,680 –> 00:07:34,880
کردن مسیر دیگری استفاده کنید بنابراین
165
00:07:34,880 –> 00:07:38,400
من این کار را در اینجا انجام می دهم شما فقط
166
00:07:38,400 –> 00:07:41,280
167
00:07:41,599 –> 00:07:45,120
این مسیر را در اینجا انتخاب کنید بنابراین
168
00:07:45,120 –> 00:07:48,240
پاتا را کپی کنید. قطع مطلق
169
00:07:48,240 –> 00:07:51,840
بسیار خوب است، بنابراین اگر اکنون این کار را انجام دهم،
170
00:07:51,840 –> 00:07:55,039
اگر به پایتون برگردم،
171
00:07:55,039 –> 00:07:58,240
باید بتوانم
172
00:07:58,240 –> 00:08:01,440
جبر را وارد کنم
173
00:08:01,440 –> 00:08:04,560
، این کار می کند، اما من نمی
174
00:08:04,560 –> 00:08:08,720
توانم بسته خود را وارد کنم.
175
00:08:10,479 –> 00:08:14,160
176
00:08:14,160 –> 00:08:16,960
177
00:08:16,960 –> 00:08:17,680
178
00:08:17,680 –> 00:08:20,879
y پات من را مستقیماً مثال زدم به
179
00:08:20,879 –> 00:08:24,160
همین دلیل است که
180
00:08:24,160 –> 00:08:27,120
اغلب دایرکتوری به نام بسته سایت
181
00:08:27,120 –> 00:08:29,680
را می بینید و آیا این کار را اینجا انجام می دهید بنابراین در
182
00:08:29,680 –> 00:08:30,960
آموزش
183
00:08:30,960 –> 00:08:33,519
من یک دایرکتوری جدید ایجاد می کنم که به
184
00:08:33,519 –> 00:08:34,000
آن
185
00:08:34,000 –> 00:08:38,240
بسته سایت می گویند و به
186
00:08:38,240 –> 00:08:41,360
سادگی مثال خود را به اینجا منتقل می کنم. این را فاکتور کنید،
187
00:08:41,360 –> 00:08:44,320
بنابراین اکنون من یک بسته جانبی دارم، من به
188
00:08:44,320 –> 00:08:44,959
عنوان مثال
189
00:08:44,959 –> 00:08:48,000
یک بسته یک بسته پایتون با
190
00:08:48,000 –> 00:08:51,440
دو ماژول من در اینجا
191
00:08:51,440 –> 00:08:54,480
دارم و اوم من این قسمت را به
192
00:08:54,480 –> 00:08:57,839
قسمت
193
00:08:57,839 –> 00:09:01,839
جانبی پایتون در اینجا می دهم، بنابراین این بسیار مهم است
194
00:09:01,839 –> 00:09:02,480
زیرا
195
00:09:02,480 –> 00:09:06,720
اساساً شما آن را قرار خواهید داد. این
196
00:09:06,720 –> 00:09:09,600
دایرکتوری هر بسته پایتونی که
197
00:09:09,600 –> 00:09:10,480
ایجاد می کنید
198
00:09:10,480 –> 00:09:14,320
و به عنوان مثال در sofa python 3 شما
199
00:09:14,320 –> 00:09:15,440
200
00:09:15,440 –> 00:09:18,880
واقعاً مقدار زیادی دارید، بنابراین اگر من به اینجا بروم و
201
00:09:18,880 –> 00:09:23,200
ساختم را انتخاب کنم
202
00:09:23,200 –> 00:09:26,560
، این را اینجا قرار می دهیم معمولاً بله، بنابراین ما
203
00:09:26,560 –> 00:09:29,760
مبل داریم که در واقع یک python
204
00:09:29,760 –> 00:09:32,720
um یک بسته پایتون است. صادرکننده سافاری داشته باشید
205
00:09:32,720 –> 00:09:34,399
که یک ماژول مبل است،
206
00:09:34,399 –> 00:09:37,200
بنابراین خواهیم دید که این فایل بزرگ
207
00:09:37,200 –> 00:09:38,240
در اینجا این
208
00:09:38,240 –> 00:09:41,200
فایل باینری بزرگ در واقع همان
209
00:09:41,200 –> 00:09:42,800
فایل پایتون است که pi
210
00:09:42,800 –> 00:09:44,959
درست است، این یک ماژول پایتون است
211
00:09:44,959 –> 00:09:46,880
که در آن تعدادی کلاس و تعدادی را قرار می دهید.
212
00:09:46,880 –> 00:09:48,080
تابع
213
00:09:48,080 –> 00:09:50,480
و شما تا کنون زمان اجرا دارید که یک
214
00:09:50,480 –> 00:09:51,120
مبل
215
00:09:51,120 –> 00:09:54,720
و بسته پایتون است، بنابراین بیایید
216
00:09:54,720 –> 00:09:57,200
وارد مبل و بسته مبل
217
00:09:57,200 –> 00:09:58,480
شویم، خواهید دید که ما
218
00:09:58,480 –> 00:10:02,560
init خود را درست داریم init ما که pi
219
00:10:02,560 –> 00:10:05,600
من این کار را در آن انجام دادم توضیح ندادم
220
00:10:05,600 –> 00:10:08,320
اگر من به اینجا برمی گردم این یک
221
00:10:08,320 –> 00:10:08,959
بسته پایتون است
222
00:10:08,959 –> 00:10:12,079
که می توانید در واقع از فایل init استفاده کنید
223
00:10:12,079 –> 00:10:13,839
تا به عنوان مثال
224
00:10:13,839 –> 00:10:16,560
225
00:10:16,880 –> 00:10:19,839
متغیر all the را تعریف کنید که به شما
226
00:10:19,839 –> 00:10:21,279
227
00:10:21,279 –> 00:10:25,040
ماژول پایتون مختلف موجود در این
228
00:10:25,040 –> 00:10:27,200
بسته پایتون را می دهد، بنابراین شما را قادر می
229
00:10:27,200 –> 00:10:29,440
سازد کاری شبیه
230
00:10:29,440 –> 00:10:33,360
به مثال انجام دهید. a که همان
231
00:10:33,360 –> 00:10:36,399
import کردن بسته پایتون من است،
232
00:10:36,399 –> 00:10:39,519
بنابراین این
233
00:10:39,519 –> 00:10:42,640
کلید all um است،
234
00:10:42,640 –> 00:10:44,640
بنابراین در واقع جبر و
235
00:10:44,640 –> 00:10:47,200
هندسه را وارد می کند و در داخل این بسته شما حتی می توانید
236
00:10:47,200 –> 00:10:48,160
237
00:10:48,160 –> 00:10:51,279
یک تابع متفاوت
238
00:10:51,279 –> 00:10:54,480
239
00:10:54,480 –> 00:10:57,279
تعریف کنید.
240
00:10:57,279 –> 00:10:58,640
برخی از پایتون ها
241
00:10:58,640 –> 00:11:02,560
مانند اگر numpy وجود دارد،
242
00:11:02,560 –> 00:11:07,200
جبر را وارد کنید، در غیر این صورت، ماژول های مختلف را وارد
243
00:11:07,200 –> 00:11:10,079
کنید، بنابراین می توانید منطق
244
00:11:10,079 –> 00:11:11,040
245
00:11:11,040 –> 00:11:13,600
کل بسته پایتون را در داخل این فایل واحد
246
00:11:13,600 –> 00:11:15,839
247
00:11:16,160 –> 00:11:21,279
انجام دهید، بنابراین بسیار خوب است، بنابراین ما
248
00:11:21,360 –> 00:11:24,320
اکنون نمونه یک بسته را فقط برای b مشاهده کردیم. مطمئن باشید
249
00:11:24,320 –> 00:11:24,720
که
250
00:11:24,720 –> 00:11:27,440
همه چیز در اینجا تنظیم شده است بنابراین ما
251
00:11:27,440 –> 00:11:28,000
252
00:11:28,000 –> 00:11:30,880
متغیر محیطی مسیر پایتون را داریم
253
00:11:30,880 –> 00:11:33,040
254
00:11:33,040 –> 00:11:35,680
که اگر به داخل این پایتون نگاه کنم به بسته سایت ما اشاره می کند که متأسفم
255
00:11:35,680 –> 00:11:37,920
256
00:11:38,000 –> 00:11:41,200
ما مثال خود را داریم هی اگر پایتون را باز
257
00:11:41,200 –> 00:11:42,240
258
00:11:42,240 –> 00:11:45,680
کنم و نمونه ای را وارد
259
00:11:45,680 –> 00:11:48,880
کنم از
260
00:11:48,880 –> 00:11:52,079
نمونه واردات
261
00:11:52,079 –> 00:11:54,880
کار می کند، همه آن نیز کار می کند، بنابراین خوب است که ما می
262
00:11:54,880 –> 00:11:56,240
توانیم
263
00:11:56,240 –> 00:12:00,880
مدل های مختلف خود را پیدا کنیم و کلاس هایمان
264
00:12:01,040 –> 00:12:06,240
را فقط به زمان اضافه کردن نگاه می کنم، آیا
265
00:12:06,720 –> 00:12:10,160
در حال حاضر
266
00:12:10,160 –> 00:12:11,839
سؤالی وجود دارد یا سؤال مهمی وجود دارد
267
00:12:11,839 –> 00:12:13,279
268
00:12:13,279 –> 00:12:16,720
بله بله بله. بله
269
00:12:16,720 –> 00:12:19,040
مقداری برابر وجود دارد، فکر می کنم می توانید دسترسی داشته باشید، می
270
00:12:19,040 –> 00:12:20,079
271
00:12:20,079 –> 00:12:23,279
دانم که متفاوت است، متاسفم بله
272
00:12:23,279 –> 00:12:25,680
سرگی ادامه دهید،
273
00:12:25,680 –> 00:12:29,279
اوه اوه من نمی دانم چرا
274
00:12:29,279 –> 00:12:32,079
باید همه بسته های خود را در بسته های جانبی پوشه قرار
275
00:12:32,079 –> 00:12:33,600
دهیم و
276
00:12:33,600 –> 00:12:36,880
چرا آنها را فقط در برخی از بسته های
277
00:12:36,880 –> 00:12:40,639
معمولی قرار نمی دهیم پوشه، بنابراین در واقع
278
00:12:40,639 –> 00:12:44,079
فقط یک قرارداد است، آه اگر این کار را انجام دهید
279
00:12:44,079 –> 00:12:46,160
، متاسفم که دوباره باز می کنم
280
00:12:46,160 –> 00:12:48,079
، این کار را
281
00:12:48,079 –> 00:12:51,200
انجام خواهم داد، تمام مسیرهایی را
282
00:12:51,200 –> 00:12:53,920
که پایتون نگاه می کند، اگر اینجا نگاه کنید
283
00:12:53,920 –> 00:12:56,000
، همه آنها این بسته جانبی
284
00:12:56,000 –> 00:12:59,040
را دارند، تقریباً منظورم این است که شما اغلب آن را خواهید
285
00:12:59,040 –> 00:13:00,240
286
00:13:00,240 –> 00:13:04,880
دید بنابراین اساساً فقط اوم است، میتوانم
287
00:13:04,880 –> 00:13:06,720
بگویم قرارداد من دقیقاً مطمئن نیستم
288
00:13:06,720 –> 00:13:08,560
که چرا
289
00:13:08,560 –> 00:13:10,320
شما خوب نام بسته را دارید،
290
00:13:10,320 –> 00:13:12,480
واضح است که میتوانید هر چیزی را درست در اینجا قرار دهید
291
00:13:12,480 –> 00:13:16,000
.
292
00:13:16,000 –> 00:13:17,120
293
00:13:17,120 –> 00:13:21,600
294
00:13:21,600 –> 00:13:24,880
295
00:13:24,880 –> 00:13:28,240
من سه راه به شما نشان دادم، دو راه
296
00:13:28,240 –> 00:13:28,560
که
297
00:13:28,560 –> 00:13:30,560
اوه پایتون بتواند بسته شما را پیدا کند،
298
00:13:30,560 –> 00:13:33,120
اولی اضافه کردن مستقیم آن قسمت به sis است
299
00:13:33,120 –> 00:13:36,320
که می توانید این کار را در
300
00:13:36,320 –> 00:13:39,519
ابتدای فایل پایتون خود
301
00:13:39,519 –> 00:13:41,920
انجام دهید، روش دوم استفاده از
302
00:13:41,920 –> 00:13:42,560
این
303
00:13:42,560 –> 00:13:46,839
متغیر محیطی است، بنابراین مسیر پایتون در اینجا
304
00:13:46,839 –> 00:13:49,440
درست um
305
00:13:49,440 –> 00:13:51,920
و آخرین مورد این است که
306
00:13:51,920 –> 00:13:52,639
مستقیماً آنها را
307
00:13:52,639 –> 00:13:56,480
داخل یکی از این
308
00:13:56,480 –> 00:14:00,000
دایرکتوری های عمومی uh قرار دهید،
309
00:14:00,000 –> 00:14:00,959
بنابراین
310
00:14:00,959 –> 00:14:04,000
در این مورد احتمالاً برای هر توزیع UH
311
00:14:04,000 –> 00:14:07,760
لینوکس و mac os
312
00:14:08,000 –> 00:14:10,800
شما این مسیر را
313
00:14:10,800 –> 00:14:12,720
در اینجا خواهید داشت که باید
314
00:14:12,720 –> 00:14:16,639
برای یک درخت پایتون که
315
00:14:17,040 –> 00:14:20,880
نسخه را خط میکشد، بنابراین شما واقعاً میتوانید بروید
316
00:14:20,880 –> 00:14:23,120
، یعنی گاهی اوقات من این کار را انجام
317
00:14:23,120 –> 00:14:24,639
318
00:14:24,639 –> 00:14:28,560
میدهم، یک پیوند نمادین از مثال خود یک بسته ایجاد میکنم،
319
00:14:28,560 –> 00:14:31,120
به عنوان مثال مستقیماً در داخل یکی از این
320
00:14:31,120 –> 00:14:32,720
دایرکتوریها در اینجا
321
00:14:32,720 –> 00:14:35,519
اکنون به ما میپردازم. معمولاً از یک دایرکتوری محلی استفاده کنید، بنابراین
322
00:14:35,519 –> 00:14:37,279
اگر به اینجا نگاه کنید،
323
00:14:37,279 –> 00:14:40,800
بله، من این کار را انجام خواهم داد،
324
00:14:40,800 –> 00:14:43,120
بنابراین اینجا کمی بزرگتر است، بنابراین در اینجا
325
00:14:43,120 –> 00:14:44,079
می توانید ببینید که
326
00:14:44,079 –> 00:14:47,440
این دایرکتوری ام
327
00:14:47,440 –> 00:14:49,360
من مطمئن نیستم که می توانید ببینید شاید این
328
00:14:49,360 –> 00:14:51,360
خوب باشد،
329
00:14:51,360 –> 00:14:54,399
بنابراین این دایرکتوری اینجاست در
330
00:14:54,399 –> 00:14:56,560
فهرست اصلی من محلی است، بنابراین من مجبور نیستم
331
00:14:56,560 –> 00:14:58,959
مدیر باشم تا این را اضافه کنم، این
332
00:14:58,959 –> 00:15:01,600
در اکثر توزیع های پایتون در دسترس خواهد بود،
333
00:15:01,600 –> 00:15:03,920
بنابراین اگر پایتون را باز کنید
334
00:15:03,920 –> 00:15:06,000
و در قسمت syspoint خود نگاه
335
00:15:06,000 –> 00:15:08,480
کنید، چیزی بسیار
336
00:15:08,480 –> 00:15:10,079
شبیه به آن خواهید داشت.
337
00:15:10,079 –> 00:15:13,120
در ویندوز آنها آن را دارند، بنابراین می توانید ببینید
338
00:15:13,120 –> 00:15:15,120
اگر این دایرکتوری
339
00:15:15,120 –> 00:15:17,440
در سیستم شما وجود ندارد، می توانید آن را ایجاد کنید
340
00:15:17,440 –> 00:15:18,240
341
00:15:18,240 –> 00:15:21,440
و سپس بسته پایتون خود را در اینجا اضافه کنید
342
00:15:21,440 –> 00:15:24,399
و این مزیتی دارد که
343
00:15:24,399 –> 00:15:26,240
هر جا باشید
344
00:15:26,240 –> 00:15:29,279
یا در یک ترمینال جدید
345
00:15:29,279 –> 00:15:31,440
است. شما python را راه اندازی می کنید یا آن را
346
00:15:31,440 –> 00:15:34,639
در اوم من ویرایشگر نمی شناسم
347
00:15:34,639 –> 00:15:37,360
یک ویرایشگر پایتون مانند
348
00:15:37,360 –> 00:15:38,480
pycharm یا
349
00:15:38,480 –> 00:15:40,880
هر چیز دیگری که بتواند بسته پایتون شما را پیدا
350
00:15:40,880 –> 00:15:42,880
کند،
351
00:15:42,880 –> 00:15:47,040
بنابراین این سومین راه برای انجام آن است
352
00:15:47,839 –> 00:15:51,279
. احتمالاً
353
00:15:51,279 –> 00:15:52,160
354
00:15:52,160 –> 00:15:55,519
بعد از این به این موضوع خواهم پرداخت اوه این
355
00:15:55,519 –> 00:15:58,160
کاری است که وقتی در حال توسعه
356
00:15:58,160 –> 00:15:58,959
357
00:15:58,959 –> 00:16:02,160
بسته های خود روی دستگاه خود هستید انجام می دهید و سؤال
358
00:16:02,160 –> 00:16:03,279
من این است که چگونه
359
00:16:03,279 –> 00:16:07,040
آن را به گونه ای توزیع کنید
360
00:16:07,040 –> 00:16:10,240
که نسبتاً یکپارچه باشد مانند
361
00:16:10,240 –> 00:16:12,240
زمانی که می دانید چیزی را با یک پیپ نصب می کنید
362
00:16:12,240 –> 00:16:13,440
363
00:16:13,440 –> 00:16:15,279
بله زیرا در غیر این صورت
364
00:16:15,279 –> 00:16:16,720
همه را دارید این چیزی است که فکر
365
00:16:16,720 –> 00:16:18,639
میکنم وقتی ما معمولاً با
366
00:16:18,639 –> 00:16:22,399
نصب
367
00:16:22,399 –> 00:16:25,600
یا فعال کردن sofa python 3 با آن دست و پنجه نرم میکنیم که شما
368
00:16:25,600 –> 00:16:28,959
باید به صورت دستی آن
369
00:16:28,959 –> 00:16:32,079
دایرکتوریها را با دست ایجاد کنید و
370
00:16:32,079 –> 00:16:35,040
برخی از بستههای دیگر را که نصب میکنید و
371
00:16:35,040 –> 00:16:36,160
آنها آن را
372
00:16:36,160 –> 00:16:39,199
برای شما درست میکنند، بله، پس این یک
373
00:16:39,199 –> 00:16:42,320
پیپ است یا apt
374
00:16:42,320 –> 00:16:45,759
یا dnf اینها مدیران بسته هستند
375
00:16:45,759 –> 00:16:48,839
whip فقط یکی دیگر است و
376
00:16:48,839 –> 00:16:51,600
او در واقع بله، لیستی از
377
00:16:51,600 –> 00:16:52,399
فایل ها را
378
00:16:52,399 –> 00:16:55,040
می گیرد، اغلب کد شما را کامپایل می کند
379
00:16:55,040 –> 00:16:56,079
380
00:16:56,079 –> 00:16:58,639
و سپس این بسته را ایجاد می
381
00:16:58,639 –> 00:16:59,759
کند که به
382
00:16:59,759 –> 00:17:02,240
سادگی داخل بسته سایت شما قرار می دهد.
383
00:17:02,240 –> 00:17:02,880
در اینجا
384
00:17:02,880 –> 00:17:06,319
وقتی از یک پیپ استفاده میکنید، فکر میکنم این است که
385
00:17:06,319 –> 00:17:09,679
شما پس کاربر
386
00:17:09,839 –> 00:17:12,160
کاربر چیزی شبیه به آن است که دقیقاً این مورد
387
00:17:12,160 –> 00:17:13,439
را در فهرست محلی شما نصب میکند
388
00:17:13,439 –> 00:17:16,480
389
00:17:16,480 –> 00:17:19,760
و بله باید ایجاد کنید.
390
00:17:19,760 –> 00:17:23,599
چند فایل پیکربندی که پیپ می
391
00:17:23,599 –> 00:17:24,480
392
00:17:24,480 –> 00:17:27,119
خواند و سپس برای شما بسته ای ایجاد می
393
00:17:27,119 –> 00:17:29,440
کند که می توانید آن را دوباره توزیع
394
00:17:29,440 –> 00:17:32,480
کنید، می توانید همین کار را با apt در
395
00:17:32,480 –> 00:17:34,960
اوبونتو و مواردی از این دست انجام دهید، بنابراین تا
396
00:17:34,960 –> 00:17:36,640
اینجای کار، python3
397
00:17:36,640 –> 00:17:40,240
باید واقعاً این بسته
398
00:17:40,240 –> 00:17:44,280
را ایجاد کند. من فکر نمی کنم سخت باشد
399
00:17:44,280 –> 00:17:45,360
[موسیقی
400
00:17:45,360 –> 00:17:47,520
] منظورم این است که گاهی اوقات طول می کشد تا
401
00:17:47,520 –> 00:17:49,280
مطمئن شویم همه چیز خوب است زیرا
402
00:17:49,280 –> 00:17:51,679
پیپ همانطور که گفتم معمولاً به
403
00:17:51,679 –> 00:17:52,480
404
00:17:52,480 –> 00:17:55,440
آن فایل های پیکربندی می دهید که به
405
00:17:55,440 –> 00:17:56,960
او می گوید چگونه
406
00:17:56,960 –> 00:18:00,000
کد خود را کامپایل کند. مورد
407
00:18:00,000 –> 00:18:03,360
ما، ما از cmake برای کامپایل کردن آن استفاده می کنیم، می
408
00:18:03,360 –> 00:18:05,200
تواند کمی باشد
409
00:18:05,200 –> 00:18:07,520
، یعنی بله، ما باید در مورد این فکر کنیم،
410
00:18:07,520 –> 00:18:09,440
411
00:18:09,440 –> 00:18:12,640
اما بله، این احتمالاً
412
00:18:12,640 –> 00:18:15,760
بهترین راه برای رفتن به سمت دیگری است که می
413
00:18:15,760 –> 00:18:18,640
توانیم در واقع فقط می توانیم یک اسکریپت پایتون ایجاد کنیم
414
00:18:18,640 –> 00:18:20,080
. اسکریپتی
415
00:18:20,080 –> 00:18:24,080
که مستقیماً این پیوند نمادین را انجام میدهد،
416
00:18:24,080 –> 00:18:27,200
بنابراین بله، ما باید در مورد این فکر کنیم
417
00:18:27,200 –> 00:18:30,000
تا ویدیوی هدف شما برای بسته
418
00:18:30,000 –> 00:18:30,320
شما
419
00:18:30,320 –> 00:18:32,720
فعلاً پلاگینهای مختلف شما در حال حاضر، حدس میزنم
420
00:18:32,720 –> 00:18:34,320
شما فقط میتوانید
421
00:18:34,320 –> 00:18:37,440
پیوند نمادین خود را با دست
422
00:18:37,440 –> 00:18:41,120
یا با استفاده از متغیر محیطی ایجاد کنید.
423
00:18:41,120 –> 00:18:46,160
اما بله من واقعاً همیشه
424
00:18:46,240 –> 00:18:48,880
اینطور نیست آه بله همیشه تمیز
425
00:18:48,880 –> 00:18:50,799
نیست خوب است اصلاً بد نیست منظورم
426
00:18:50,799 –> 00:18:52,480
این بود که فقط می دانید فکر می کنم آنچه
427
00:18:52,480 –> 00:18:54,640
برای من توصیف کردید بسیار واضح است این
428
00:18:54,640 –> 00:18:55,360
اولین چیز است
429
00:18:55,360 –> 00:18:58,240
و نحوه عملکرد شما را توضیح می دهد هنگامی که
430
00:18:58,240 –> 00:19:00,320
شما اساساً در حال توسعه
431
00:19:00,320 –> 00:19:03,200
چیزهای خود هستید، وقتی می خواهید آنها را نصب کنید،
432
00:19:03,200 –> 00:19:05,280
بله، باید این دایرکتوری را ایجاد کنید
433
00:19:05,280 –> 00:19:08,400
که آسان است، زمانی که
434
00:19:08,400 –> 00:19:10,640
بدانید باید این کار را انجام دهید و بله،
435
00:19:10,640 –> 00:19:13,360
جایی که باید قرار داشته باشد، فکر می کنم
436
00:19:13,360 –> 00:19:15,120
همه چیز
437
00:19:15,120 –> 00:19:19,600
بسیار آسان تر می شود، بنابراین بله بسیار خوب،
438
00:19:19,600 –> 00:19:23,600
البته خیلی خوب، پس اوم، کاری که شما انجام دادید،
439
00:19:23,600 –> 00:19:27,760
بقیه سوال داشتند
440
00:19:27,910 –> 00:19:29,440
[موسیقی]
441
00:19:29,440 –> 00:19:32,480
بسیار خوب، بنابراین قسمت بعدی دقیقاً همین کار را انجام می دهد
442
00:19:32,480 –> 00:19:33,760
،
443
00:19:33,760 –> 00:19:38,000
اما این بار در c plus بنابراین ما
444
00:19:38,000 –> 00:19:41,760
ماژول جبر را
445
00:19:41,760 –> 00:19:45,360
در c plus و هندسه یک
446
00:19:45,360 –> 00:19:49,039
ام من فقط میخواهم به یادداشتهایم نگاه
447
00:19:49,039 –> 00:19:50,720
کنم تا مطمئن شوم چیزی را فراموش
448
00:19:50,720 –> 00:19:52,160
نکردهام، پس
449
00:19:52,160 –> 00:19:55,280
نه خیلی خوب،
450
00:19:55,280 –> 00:19:58,080
بنابراین بله، اساساً این جبر که pi
451
00:19:58,080 –> 00:19:58,480
452
00:19:58,480 –> 00:20:02,400
در واقع میتواند یک فایل باینری باشد
453
00:20:02,400 –> 00:20:06,240
که در c به علاوه اوم کامپایل شده است،
454
00:20:06,240 –> 00:20:09,360
بیایید همین الان این کار را انجام دهیم
455
00:20:09,360 –> 00:20:12,400
.
456
00:20:12,720 –> 00:20:21,840
یک مثال ایجاد خواهد کرد در اینجا
457
00:20:22,240 –> 00:20:25,440
و من فعلاً آن را در داخل بسته قرار نمی دهم
458
00:20:25,440 –> 00:20:28,720
زیرا از cmake می خواهم که این
459
00:20:28,720 –> 00:20:31,679
را در واقع کامپایل کند و مستقیماً آن را
460
00:20:31,679 –> 00:20:32,000
در
461
00:20:32,000 –> 00:20:35,200
بسته جانبی قرار دهد تا همه چیز
462
00:20:35,200 –> 00:20:37,120
را در داخل بسته قرار دهیم تا تنها چیزی که در داخل
463
00:20:37,120 –> 00:20:38,480
بسته
464
00:20:38,480 –> 00:20:42,320
داریم باینری ها باشد بنابراین فقط یک اولویت است
465
00:20:42,320 –> 00:20:43,120
که ما می
466
00:20:43,120 –> 00:20:45,840
توانیم همه کارها را انجام دهیم. در اینجا اما من معمولاً دوست
467
00:20:45,840 –> 00:20:46,799
دارم
468
00:20:46,799 –> 00:20:49,840
کد منبع خود را از باینری ها جدا کنم، بنابراین
469
00:20:49,840 –> 00:20:54,039
بیایید جلوتر برویم و یک algebra.cpp اضافه کنیم،
470
00:20:54,039 –> 00:20:57,039
471
00:20:58,640 –> 00:21:02,080
بنابراین در این یک
472
00:21:02,080 –> 00:21:05,760
um دوباره
473
00:21:05,760 –> 00:21:08,240
از راه حل پیست می کنم زیرا
474
00:21:08,240 –> 00:21:09,440
کمی
475
00:21:09,440 –> 00:21:11,520
سریعتر پیش می رود.
476
00:21:11,520 –> 00:21:13,520
دوباره شامل خواهد شد زیرا
477
00:21:13,520 –> 00:21:17,919
دوباره اوم من می خواهم
478
00:21:17,919 –> 00:21:21,360
از بردارهای عوامل استفاده
479
00:21:21,360 –> 00:21:23,679
کنم، همچنین یک چیز بسیار خوب وجود دارد، اوه اینجا
480
00:21:23,679 –> 00:21:24,799
ما از pi در
481
00:21:24,799 –> 00:21:28,000
11s برای ایجاد یافته های پایتون استفاده می کنیم
482
00:21:28,000 –> 00:21:32,240
و باندهای pi از قبل یک تخم دارند
483
00:21:32,240 –> 00:21:35,360
و منظور من از هر اتصالی است که شما خواهید داشت. نیاز
484
00:21:35,360 –> 00:21:37,120
به تخم مرغ دارد و بنابراین در واقع
485
00:21:37,120 –> 00:21:39,600
اتصالات برای هر تخم مرغ را در
486
00:21:39,600 –> 00:21:40,880
ماتریس ها ایجاد می
487
00:21:40,880 –> 00:21:44,240
کند، بنابراین این فوق العاده مفید است و
488
00:21:44,240 –> 00:21:47,679
بله، پس بیایید ادامه دهیم و
489
00:21:47,679 –> 00:21:50,720
ماژول خود را ایجاد کنیم تا اولین چیزی که پایتون
490
00:21:50,720 –> 00:21:55,679
در هنگام دریافت داشته باشد. یک
491
00:21:55,679 –> 00:21:59,600
فایل باینری به عنوان um به عنوان مدل،
492
00:21:59,600 –> 00:22:02,000
او به دنبال یک نقطه ورودی خواهد بود، بنابراین
493
00:22:02,000 –> 00:22:03,120
این مشابه است که
494
00:22:03,120 –> 00:22:05,919
در برنامه معمولی شما
495
00:22:05,919 –> 00:22:07,360
که مانند این
496
00:22:07,360 –> 00:22:10,400
تابع اصلی را دارید،
497
00:22:10,400 –> 00:22:13,600
سیستم عملیات به دنبال این
498
00:22:13,600 –> 00:22:14,400
نقطه ورودی
499
00:22:14,400 –> 00:22:16,799
خواهد بود، شروع به اجرای کد در اینجا می کند.
500
00:22:16,799 –> 00:22:18,720
بنابراین اساساً همان چیزهایی است که
501
00:22:18,720 –> 00:22:22,559
در پایتون در پایتون وجود دارد، شما
502
00:22:22,559 –> 00:22:26,000
یک ماکرو در اینجا دارید که به نام ماژول pi bind 11 نامیده
503
00:22:26,000 –> 00:22:28,960
می شود و نام مدل را
504
00:22:28,960 –> 00:22:31,679
به آن می دهید تا نام آن
505
00:22:31,679 –> 00:22:34,960
چیزی باشد که در واقع وارد می شود، بنابراین
506
00:22:34,960 –> 00:22:37,280
اگر جبر باشد
507
00:22:37,280 –> 00:22:40,480
و m در اینجا یک است. متغیری
508
00:22:40,480 –> 00:22:43,840
که ماژول واقعی پایتون است،
509
00:22:43,840 –> 00:22:47,280
بنابراین من کمی بعد به شما نشان خواهم داد که
510
00:22:47,280 –> 00:22:48,799
چگونه چیزهایی را در ماژول اضافه کنیم.
511
00:22:48,799 –> 00:22:50,880
512
00:22:50,880 –> 00:22:54,240
513
00:22:54,240 –> 00:22:58,880
514
00:22:58,880 –> 00:23:02,559
515
00:23:03,919 –> 00:23:07,280
516
00:23:07,280 –> 00:23:10,720
517
00:23:10,720 –> 00:23:14,080
برای کامپایل کردن این c plus plus باید یک فایل cmake را در اینجا اضافه کنید
518
00:23:14,080 –> 00:23:17,600
و بنابراین اجازه دهید این پروژه را
519
00:23:17,600 –> 00:23:20,799
مثال b صدا
520
00:23:21,120 –> 00:23:24,480
کنیم، همچنین نسخه پایتون را تنظیم می کنیم،
521
00:23:24,480 –> 00:23:26,799
بنابراین برای این کار از نسخه پایتون pi bind 11 استفاده می کنیم
522
00:23:26,799 –> 00:23:28,400
523
00:23:28,400 –> 00:23:32,240
و اجازه دهید این کار را در
524
00:23:32,240 –> 00:23:34,559
خطی که می توانیم انجام دهیم. انجام دادن فقط سه و
525
00:23:34,559 –> 00:23:36,400
به دنبال بالاترین
526
00:23:36,400 –> 00:23:38,640
موجود خواهد بود، میخواهم مطمئن شوم که
527
00:23:38,640 –> 00:23:40,480
از این یکی استفاده میکند، زیرا من
528
00:23:40,480 –> 00:23:41,919
نسخههای پایتون زیادی روی رایانه شخصیام دارم،
529
00:23:41,919 –> 00:23:46,480
بنابراین ما بسته pi را تا به حال
530
00:23:46,480 –> 00:23:49,679
توسط pi با 11 پیدا میکنیم، متأسفم
531
00:23:49,679 –> 00:23:54,000
که واضح است که لازم است.
532
00:23:54,000 –> 00:23:57,440
و همچنین میخواستم دوباره استفاده
533
00:23:57,440 –> 00:24:01,120
کنم تا دوباره درست پیدا کنم
534
00:24:02,400 –> 00:24:05,679
و سپس
535
00:24:05,679 –> 00:24:09,440
اگر میخواهید در فایل cmake به یاد داشته باشید
536
00:24:09,440 –> 00:24:10,640
که
537
00:24:10,640 –> 00:24:14,480
یک کتابخانه مشترک اضافه کنید، کتابخانه را اضافه کنید،
538
00:24:14,480 –> 00:24:18,240
این یک نقطه برای شما ایجاد میکند.
539
00:24:18,240 –> 00:24:22,000
dot
540
00:24:22,000 –> 00:24:26,000
dln در ویندوز uh با pi bind
541
00:24:26,000 –> 00:24:27,679
به شما امکان دسترسی به
542
00:24:27,679 –> 00:24:30,159
یک تابع در اینجا یک تابع منظره به نام
543
00:24:30,159 –> 00:24:31,200
544
00:24:31,200 –> 00:24:34,320
ماژول تبلیغاتی pi bind 11 را می دهد،
545
00:24:34,320 –> 00:24:37,200
بنابراین اساساً فقط یک بسته بندی در اطراف
546
00:24:37,200 –> 00:24:38,559
کتابخانه تبلیغات است
547
00:24:38,559 –> 00:24:41,200
اما مستقیماً هر آنچه را که
548
00:24:41,200 –> 00:24:42,000
549
00:24:42,000 –> 00:24:46,080
برای پیوند دادن با پایتون نیاز دارید قرار می دهد.
550
00:24:46,080 –> 00:24:49,360
این ماژول را جبر می نامیم، این یک
551
00:24:49,360 –> 00:24:50,559
کتابخانه مشترک است
552
00:24:50,559 –> 00:24:54,000
و ما فایل c plus plus خود را اضافه می کنیم.
553
00:24:54,000 –> 00:24:57,279
نکته بعدی این است که باید کتابخانه جبر خود را پیوند دهیم
554
00:24:57,279 –> 00:25:00,640
تا
555
00:25:00,640 –> 00:25:04,720
دوباره درست پرداخت کنیم
556
00:25:04,720 –> 00:25:08,720
و مورد بعدی من آن را کپی می کنم زیرا
557
00:25:08,720 –> 00:25:11,679
مجموعه کمی طولانی است
558
00:25:12,480 –> 00:25:15,840
ویژگی های هدف بنابراین من wi به cmake میگویم
559
00:25:15,840 –> 00:25:19,039
560
00:25:19,039 –> 00:25:23,039
که کتابخانه را خروجی بگیرد، بنابراین نقطه را در مورد من
561
00:25:23,039 –> 00:25:26,240
در بسته سایت دایرکتوری اسلش میدهم،
562
00:25:26,240 –> 00:25:29,760
مثال b بنابراین من اساساً میخواهم و
563
00:25:29,760 –> 00:25:33,600
c میکنم این فایل را در
564
00:25:33,600 –> 00:25:36,880
یک جبر کامپایل کنم که در
565
00:25:36,880 –> 00:25:40,400
داخل دایرکتوری قرار میگیرد و منبع c mag
566
00:25:40,400 –> 00:25:41,279
وجود دارد.
567
00:25:41,279 –> 00:25:44,799
is is is is root my directory is here tutorial
568
00:25:44,799 –> 00:25:45,679
sp3
569
00:25:45,679 –> 00:25:49,600
site cleaning pocket نمونه ای از پکیج سایت است،
570
00:25:49,600 –> 00:25:52,799
بنابراین اساساً این
571
00:25:52,799 –> 00:25:57,279
کار را انجام دادم، ابتدا این را در cmake خود اضافه کردم و
572
00:25:57,279 –> 00:26:02,320
در اینجا فقط مثال زیر شاخه را اضافه می کنم
573
00:26:02,320 –> 00:26:04,880
574
00:26:06,559 –> 00:26:11,360
پس بیایید این را دوباره بارگذاری کنیم، ببخشید
575
00:26:11,360 –> 00:26:14,400
می توانید توضیح دهید
576
00:26:14,400 –> 00:26:17,919
دقیقاً به چه معناست
577
00:26:17,919 –> 00:26:22,320
ماژول پایتون را به eigen پیوند دهید
578
00:26:22,320 –> 00:26:25,520
579
00:26:25,520 –> 00:26:28,159
تا اگر وارد c plus به علاوه
580
00:26:28,159 –> 00:26:28,640
آن را فعال کنم، می بینید
581
00:26:28,640 –> 00:26:31,919
که دوباره در اینجا قرار داده ام بنابراین مشکلی
582
00:26:31,919 –> 00:26:33,200
در حال حاضر
583
00:26:33,200 –> 00:26:36,320
584
00:26:36,320 –> 00:26:39,679
وجود
585
00:26:39,679 –> 00:26:42,480
دارد. در واقع دوباره درخت پس این یک c
586
00:26:42,480 –> 00:26:42,960
make
587
00:26:42,960 –> 00:26:46,559
target است وقتی پیوند می دهید uh به عنوان
588
00:26:46,559 –> 00:26:50,640
مثال b اینجا نیز یک نیمه هدف است
589
00:26:50,640 –> 00:26:53,679
متاسفم اما نه دقیقاً اما جبر بنابراین
590
00:26:53,679 –> 00:26:55,600
591
00:26:55,600 –> 00:26:59,120
وقتی یک کتابخانه مشترک جدید
592
00:26:59,120 –> 00:27:02,159
یا یک مثال در cma اضافه می کنید این می
593
00:27:02,159 –> 00:27:05,200
شود چه هدف cmake نامیده می شود و
594
00:27:05,200 –> 00:27:07,440
می توانید ویژگی های مختلفی را اضافه کنید و می توانید
595
00:27:07,440 –> 00:27:08,080
تعیین کنید
596
00:27:08,080 –> 00:27:11,200
که کدام فایل هدر مورد نیاز است
597
00:27:11,200 –> 00:27:14,400
که کدام کتابخانه باید
598
00:27:14,400 –> 00:27:17,200
در برابر پروژه یا
599
00:27:17,200 –> 00:27:19,440
فایل اجرایی یا کتابخانه شما پیوند داده شود،
600
00:27:19,440 –> 00:27:23,279
بنابراین در این مورد eigentree
601
00:27:23,279 –> 00:27:27,039
دوباره اینجا یک هدف cmec است
602
00:27:27,039 –> 00:27:30,799
که تعیین می کند کجا باید
603
00:27:30,799 –> 00:27:34,240
فایل هدر را پیدا کنید تا هر نقطه
604
00:27:34,240 –> 00:27:37,360
h از آسیایی باشد و
605
00:27:37,360 –> 00:27:40,240
همچنین در این مورد در مورد دوباره
606
00:27:40,240 –> 00:27:42,559
فقط آن فایل h است که فقط یک فایل هدر است
607
00:27:42,559 –> 00:27:43,200
608
00:27:43,200 –> 00:27:46,240
اما گاهی اوقات شما یک کتابخانه مشترک خواهید داشت،
609
00:27:46,240 –> 00:27:46,960
610
00:27:46,960 –> 00:27:49,559
به عنوان مثال در پایتون شما
611
00:27:49,559 –> 00:27:51,279
python.so
612
00:27:51,279 –> 00:27:54,159
و دیگر جبر
613
00:27:54,159 –> 00:27:55,919
شما باید در مقابل پایتون لینک شود.
614
00:27:55,919 –> 00:27:59,440
بنابراین توابعی
615
00:27:59,440 –> 00:28:02,559
هستند که در فایلهای cpp ما استفاده میشوند که در
616
00:28:02,559 –> 00:28:04,880
واقع بهعنوان قابل اجرا تعریف میشوند، بنابراین
617
00:28:04,880 –> 00:28:06,000
این یک پیوند
618
00:28:06,000 –> 00:28:09,679
خوب است، بنابراین پیوند واقعی در برابر
619
00:28:09,679 –> 00:28:13,279
پایتون در اینجا انجام نمیشود، زیرا به
620
00:28:13,279 –> 00:28:13,679
621
00:28:13,679 –> 00:28:17,520
طور خودکار توسط این تابع pi توسط 11 انجام می شود.
622
00:28:17,520 –> 00:28:20,399
اگر از کتابخانه سنتی i’d استفاده
623
00:28:20,399 –> 00:28:21,520
624
00:28:21,520 –> 00:28:24,159
کنم، باید کتابخانه پیوند هدف را
625
00:28:24,159 –> 00:28:25,039
626
00:28:25,039 –> 00:28:27,279
در برابر پایتون اضافه کنم، در اینجا چیزی
627
00:28:27,279 –> 00:28:28,720
شبیه به پایتون خواهد بود،
628
00:28:28,720 –> 00:28:32,080
اما من آن را نداشته باشید، پس باند پی 11
629
00:28:32,080 –> 00:28:32,799
630
00:28:32,799 –> 00:28:36,320
دقیقاً این کار را برای شما انجام
631
00:28:36,320 –> 00:28:39,120
می دهد، اوه و این
632
00:28:39,120 –> 00:28:40,640
633
00:28:40,640 –> 00:28:45,200
فایل نمونه شما در دسترس خواهد بود بله، البته خیلی
634
00:28:45,200 –> 00:28:48,799
ممنون، خوب،
635
00:28:48,799 –> 00:28:51,919
بیایید بررسی کنیم تا
636
00:28:51,919 –> 00:28:56,320
cmake در اینجا به خوبی اجرا شود. 11
637
00:28:56,320 –> 00:28:59,919
که در سیستم من نصب شده است
638
00:28:59,919 –> 00:29:03,039
، بیایید این را بسازیم
639
00:29:06,000 –> 00:29:09,919
و امیدوارم درست کار کند،
640
00:29:09,919 –> 00:29:15,039
بنابراین دقیقاً جبر نیست. پس
641
00:29:15,039 –> 00:29:18,159
درست است که در واقع
642
00:29:18,159 –> 00:29:19,600
اطلاعات دیگری را
643
00:29:19,600 –> 00:29:23,679
به نام کتابخانه اضافه کرده است،
644
00:29:23,679 –> 00:29:26,799
بنابراین c python صرفاً به این دلیل است
645
00:29:26,799 –> 00:29:30,399
که در مقابل
646
00:29:30,399 –> 00:29:33,919
پایتون پیوند داده شده است زیرا شما پایتون متفاوتی دریافت کردید که
647
00:29:33,919 –> 00:29:36,799
در واقع پیاده سازی یکی
648
00:29:36,799 –> 00:29:37,279
649
00:29:37,279 –> 00:29:40,640
در C نوشته شده است و دیگری در واقع با پایتون نوشته شده است
650
00:29:40,640 –> 00:29:43,039
651
00:29:46,960 –> 00:29:50,320
، یک نفر وجود دارد آه این یک فرنچایز است اشکالی ندارد
652
00:29:50,320 –> 00:29:53,600
بنابراین اوه این نسخه پایتون است و
653
00:29:53,600 –> 00:29:55,679
این معماری کامپیوتر من است
654
00:29:55,679 –> 00:29:59,039
و من در چسب لینوکس تا
655
00:29:59,039 –> 00:30:01,039
بتوانید به pipebind بگویید
656
00:30:01,039 –> 00:30:02,320
این را حذف کند اما من
657
00:30:02,320 –> 00:30:04,159
واقعاً آن را دوست دارم زیرا می توانید
658
00:30:04,159 –> 00:30:06,240
دقیقاً
659
00:30:06,240 –> 00:30:10,399
در برابر چه پایتونی به ماژول شما پیوند داده شده است ،
660
00:30:10,399 –> 00:30:14,000
بنابراین بیایید به بسته سایت خود در
661
00:30:14,000 –> 00:30:15,840
اینجا نگاه کنیم ، اکنون بسته
662
00:30:15,840 –> 00:30:19,120
b نمونه خود را داریم e که حاوی
663
00:30:19,120 –> 00:30:22,240
فقط یک ماژول جبر است که در آن قرار دارد
664
00:30:22,240 –> 00:30:24,480
، بنابراین اگر این را باز کنید می بینید که
665
00:30:24,480 –> 00:30:25,600
یک باینری است
666
00:30:25,600 –> 00:30:28,559
بنابراین نمی توانید چیزی پیدا کنید
667
00:30:28,559 –> 00:30:28,880
و
668
00:30:28,880 –> 00:30:32,080
بیایید به ترمینال خود
669
00:30:32,080 –> 00:30:35,279
و اینجا برگردیم
670
00:30:35,279 –> 00:30:38,640
و مطمئن نیستم که آیا باید دوباره راه اندازی کنم
671
00:30:38,640 –> 00:30:42,080
،
672
00:30:42,080 –> 00:30:45,679
بیایید این مثال
673
00:30:45,679 –> 00:30:49,480
674
00:30:49,480 –> 00:30:53,200
675
00:30:53,200 –> 00:30:54,080
676
00:30:54,080 –> 00:30:57,840
677
00:30:57,840 –> 00:31:01,039
وارد کردن
678
00:31:01,039 –> 00:31:02,320
679
00:31:02,320 –> 00:31:05,519
را امتحان کنیم.
680
00:31:05,519 –> 00:31:07,440
توابع در اینجا متقاطع می شوند و
681
00:31:07,440 –> 00:31:08,880
به مدل c plus plus ما عادی می
682
00:31:08,880 –> 00:31:11,760
شوند، اینجاست که pi
683
00:31:11,760 –> 00:31:12,399
684
00:31:12,399 –> 00:31:17,760
bind بسیار خوب است، انجام آن بسیار آسان است
685
00:31:17,760 –> 00:31:20,640
، ما c plus plus خود را در اینجا ایجاد می کنیم، بنابراین
686
00:31:20,640 –> 00:31:21,840
بیایید فقط یک
687
00:31:21,840 –> 00:31:25,600
نام مستعار برای دوباره ایجاد کنیم تا یک
688
00:31:25,600 –> 00:31:30,960
درخت vec در واقع باشد. یک ماتریس دوباره
689
00:31:30,960 –> 00:31:34,720
دو برابر سه در یک، بنابراین یک بردار است،
690
00:31:34,720 –> 00:31:35,600
691
00:31:35,600 –> 00:31:39,440
ما همچنین یک نام مستعار ایجاد می کنیم،
692
00:31:39,440 –> 00:31:44,480
بنابراین همه چیز در خط لوله pi در 11 باشد
693
00:31:44,480 –> 00:31:46,799
و سپس این فضای نام pi
694
00:31:46,799 –> 00:31:47,600
bind است، بنابراین
695
00:31:47,600 –> 00:31:49,919
برای اینکه کمی آن را کمی درست کنیم، می گویم
696
00:31:49,919 –> 00:31:50,960
697
00:31:50,960 –> 00:31:54,240
اوه ما پاک کنیم. همچنین یک نام مستعار و
698
00:31:54,240 –> 00:31:57,360
فضای نام ایجاد کنید که c همه pi که در
699
00:31:57,360 –> 00:31:59,200
واقع فقط به صورت جزئی است،
700
00:31:59,200 –> 00:32:02,559
بنابراین اکنون میتوانیم از pi به جای pi استفاده کنیم، بسیار
701
00:32:02,559 –> 00:32:06,080
خوب، بنابراین ادامه
702
00:32:06,080 –> 00:32:09,440
دهید بیایید بردار را درست
703
00:32:09,440 –> 00:32:11,760
قبل از رفتن به عملاً ایجاد کنیم، من از شی um pi استفاده خواهم کرد،
704
00:32:11,760 –> 00:32:15,679
بنابراین یک شی pi، هر شی
705
00:32:15,679 –> 00:32:16,320
پایتون
706
00:32:16,320 –> 00:32:19,519
باشد، خوب است. می تواند uh
707
00:32:19,519 –> 00:32:23,440
int باشد، می تواند یک um باشد، می تواند یک کلاس پایتون
708
00:32:23,440 –> 00:32:24,960
709
00:32:24,960 –> 00:32:27,919
یا یک رشته پایتون باشد.
710
00:32:27,919 –> 00:32:29,919
711
00:32:29,919 –> 00:32:33,760
712
00:32:33,760 –> 00:32:36,880
713
00:32:36,880 –> 00:32:40,559
714
00:32:40,559 –> 00:32:44,399
715
00:32:44,399 –> 00:32:47,600
پس چگونه آن را دوباره به درستی تبدیل کنیم،
716
00:32:47,600 –> 00:32:51,039
بنابراین
717
00:32:51,039 –> 00:32:55,360
میخواهیم گرههای ما در
718
00:32:55,360 –> 00:32:58,640
اینجا بهعنوان یک بردار ویژه نمایش داده شوند، بنابراین
719
00:32:58,640 –> 00:33:02,640
از cast استفاده میکنیم تا pi bind
720
00:33:02,640 –> 00:33:03,760
در واقع بتواند
721
00:33:03,760 –> 00:33:07,679
722
00:33:07,679 –> 00:33:11,360
این شیء پایتون را به یک برداری تبدیل کند و
723
00:33:11,360 –> 00:33:14,480
چگونه این کار را انجام میدهد. it’s it’s it’s it’s it’s in
724
00:33:14,480 –> 00:33:14,960
this
725
00:33:14,960 –> 00:33:18,080
header in here it’s header.h
726
00:33:18,080 –> 00:33:20,720
در واقع توابع مختلفی را تعریف می
727
00:33:20,720 –> 00:33:21,840
کند
728
00:33:21,840 –> 00:33:24,960
که وقتی یک شی pi دریافت می کنند
729
00:33:24,960 –> 00:33:26,960
در واقع نحوه ایجاد
730
00:33:26,960 –> 00:33:28,880
یک بردار یا
731
00:33:28,880 –> 00:33:32,000
متأسفانه یک ماتریس عامل از و شی pi را تعریف می کند
732
00:33:32,000 –> 00:33:34,240
و ما ببینید چگونه این کار را بعدا انجام می دهیم
733
00:33:34,240 –> 00:33:35,519
با
734
00:33:35,519 –> 00:33:39,519
پلاگین های مبل ما، اما بله برای دانش،
735
00:33:39,519 –> 00:33:42,559
بله، سوال خوبی است و آیا این
736
00:33:42,559 –> 00:33:45,279
شی پایتون یک بردار اعداد
737
00:33:45,279 –> 00:33:46,799
نیست بلکه یک رشته است زیرا اوم
738
00:33:46,799 –> 00:33:49,679
من نمی دانم کلاس چگونه می تواند
739
00:33:49,679 –> 00:33:50,640
این کار را انجام دهد،
740
00:33:50,640 –> 00:33:54,000
بنابراین دوباره خط لوله بسیار جالب است زیرا
741
00:33:54,000 –> 00:33:56,559
شما پیوندهایی برای بسیاری از چیزها
742
00:33:56,559 –> 00:33:57,600
از جمله
743
00:33:57,600 –> 00:34:01,200
um s
744
00:34:02,080 –> 00:34:05,519
آن را خیلی stl دارد،
745
00:34:05,519 –> 00:34:09,199
بنابراین این بدان معنی است که می
746
00:34:09,199 –> 00:34:12,320
تواند رشته std را پیدا
747
00:34:12,320 –> 00:34:15,918
کند تا آن را از و به python
748
00:34:15,918 –> 00:34:19,040
std map آرایه std تبدیل کند،
749
00:34:19,040 –> 00:34:22,320
بنابراین هر چیزی در std
750
00:34:22,320 –> 00:34:24,320
خوب است، اما منظورم این است که اگر قرار دهید یک
751
00:34:24,320 –> 00:34:25,679
شی دیگر نه
752
00:34:25,679 –> 00:34:27,760
بردار اعداد بلکه یک رشته است که
753
00:34:27,760 –> 00:34:30,320
فقط می گوید این یک خطا است من نمی توانم
754
00:34:30,320 –> 00:34:33,679
یک رشته را به بردار تبدیل کنم،
755
00:34:33,679 –> 00:34:36,079
اوه بله، در این مورد در اینجا مانند این خواهد
756
00:34:36,079 –> 00:34:37,040
بود که
757
00:34:37,040 –> 00:34:41,599
اگر شما این کار را انجام می
758
00:34:41,839 –> 00:34:45,359
دادید، بنابراین اساساً آن را انجام می دهید. خوب می گوید شما
759
00:34:45,359 –> 00:34:46,159
نمی توانید
760
00:34:46,159 –> 00:34:49,760
یک hello insider factory درست کنید، خوب،
761
00:34:49,760 –> 00:34:51,918
این است اوه، این در واقع کامپایلر است
762
00:34:51,918 –> 00:34:53,119
که
763
00:34:53,119 –> 00:34:56,320
به شما می گوید نمی توانید این کار را انجام دهید،
764
00:34:56,320 –> 00:34:59,359
بنابراین من دوباره این کار را دارم،
765
00:34:59,359 –> 00:35:02,400
حالا اجازه دهید فقط یک
766
00:35:02,400 –> 00:35:05,920
نسخه نرمال
767
00:35:05,920 –> 00:35:08,079
768
00:35:08,079 –> 00:35:09,760
شده را اضافه کنیم. از این آقا
769
00:35:09,760 –> 00:35:11,920
بنابراین ما دوباره این تابع نرمال شده
770
00:35:11,920 –> 00:35:13,760
را در اینجا
771
00:35:13,760 –> 00:35:17,520
داریم اکنون اگر سعی کنیم برگردیم
772
00:35:17,520 –> 00:35:21,040
و البته این یک خطا است این
773
00:35:21,040 –> 00:35:23,280
توابع قرار است یک شی pi را برگرداند،
774
00:35:23,280 –> 00:35:25,359
بنابراین همانطور که در اینجا کست pi را انجام دادیم،
775
00:35:25,359 –> 00:35:25,920
می توانیم این کار را
776
00:35:25,920 –> 00:35:29,440
در اینجا نیز انجام
777
00:35:29,440 –> 00:35:32,560
دهیم. در واقع
778
00:35:32,560 –> 00:35:36,000
بسته به آرگومان میدهم،
779
00:35:36,000 –> 00:35:37,599
780
00:35:37,599 –> 00:35:40,800
یا نوع تعریف شده
781
00:35:40,800 –> 00:35:44,160
در قالب را در اینجا برمیگرداند یا اگر
782
00:35:44,160 –> 00:35:44,480
783
00:35:44,480 –> 00:35:47,119
هیچ الگوی قرار نمیدهید و چیزی غیر
784
00:35:47,119 –> 00:35:47,760
از یک
785
00:35:47,760 –> 00:35:50,640
شی pi دارد، آن را به یک شی pi ارسال میکند،
786
00:35:50,640 –> 00:35:51,599
بسیار خوب.
787
00:35:51,599 –> 00:35:54,800
فقط دو راه برای استفاده از pi cast
788
00:35:54,800 –> 00:35:58,560
از یک شی pi به یک نوع c پلاس پلاس
789
00:35:58,560 –> 00:35:59,920
یا از یک
790
00:35:59,920 –> 00:36:02,960
نوع ساده به یک شی pi وجود دارد،
791
00:36:02,960 –> 00:36:06,640
اگر در اینجا جلو برویم، اینجا جایی است که
792
00:36:06,640 –> 00:36:07,280
793
00:36:07,280 –> 00:36:10,079
از m خود در اینجا استفاده می کنیم، بنابراین m به یاد داشته باشید که نشان دهنده
794
00:36:10,079 –> 00:36:12,960
پایتون جبر ما است. مدل
795
00:36:12,960 –> 00:36:16,079
بنابراین همان چیزی است که در
796
00:36:16,079 –> 00:36:19,040
مثال ما جبر که pi
797
00:36:19,040 –> 00:36:22,320
درست است، بنابراین در m ما ادامه می دهیم و
798
00:36:22,320 –> 00:36:25,280
def را اضافه می کنیم بنابراین def یک تابع جدید
799
00:36:25,280 –> 00:36:26,000
800
00:36:26,000 –> 00:36:29,920
به نام نرمال شده تعریف
801
00:36:29,920 –> 00:36:33,599
می کنیم و آدرس تابع c خود را به آن می دهیم.
802
00:36:33,599 –> 00:36:37,440
و این یعنی من
803
00:36:37,440 –> 00:36:40,880
اساساً شما فقط نرمال شده را اضافه کردید
804
00:36:40,880 –> 00:36:43,040
تابع c به علاوه به علاوه به
805
00:36:43,040 –> 00:36:45,040
مدل پایتون m
806
00:36:45,040 –> 00:36:47,280
میتوانیم یک چیز دیگر را
807
00:36:47,280 –> 00:36:49,760
در اینجا اضافه کنیم که
808
00:36:49,760 –> 00:36:51,760
اشارهای به نوع آرگومانهایی است که شما دارید، بنابراین
809
00:36:51,760 –> 00:36:53,119
در اینجا p را صدا
810
00:36:53,119 –> 00:36:55,839
میزنیم و خواهیم دید
811
00:36:56,480 –> 00:37:00,320
که منظور من چگونه استفاده میشود.
812
00:37:00,320 –> 00:37:04,560
پس بیایید ادامه دهیم و
813
00:37:06,079 –> 00:37:09,920
این را کامپایل کنیم، بله،
814
00:37:09,920 –> 00:37:12,960
پس بیایید اکنون به اصطلاح خود برگردیم، بنابراین در اینجا
815
00:37:12,960 –> 00:37:14,960
احتمالاً راهی برای
816
00:37:14,960 –> 00:37:17,599
تخلیه ماژول وجود دارد، اما در حال حاضر فقط
817
00:37:17,599 –> 00:37:21,280
از این مفسر پایتون خارج میشویم و یک مفسر
818
00:37:21,280 –> 00:37:22,800
جدید
819
00:37:22,800 –> 00:37:26,000
و از به عنوان مثال b import
820
00:37:26,000 –> 00:37:29,520
جبر، ماژول جبر
821
00:37:29,520 –> 00:37:30,240
بارگذاری شده است
822
00:37:30,240 –> 00:37:33,680
و اکنون اگر من در جبر نگاه کنم و در
823
00:37:33,680 –> 00:37:34,400
824
00:37:34,400 –> 00:37:36,480
واقع یک تابع بسیار مفید به نام
825
00:37:36,480 –> 00:37:38,720
help در پایتون وجود دارد که می توانید از آن در
826
00:37:38,720 –> 00:37:41,839
اکثر انواع استفاده کنید، بنابراین اگر در
827
00:37:41,839 –> 00:37:47,599
al jabra dot normalized
828
00:37:47,839 –> 00:37:50,880
normalize. p بنابراین می توانید
829
00:37:50,880 –> 00:37:51,359
اینجا را ببینید
830
00:37:51,359 –> 00:37:54,400
p این گیاه ماست
831
00:37:54,400 –> 00:37:57,119
و در واقع نمی تواند از این p در اینجا استفاده کند
832
00:37:57,119 –> 00:37:58,240
زیرا ما
833
00:37:58,240 –> 00:38:01,520
به pi گفتیم که این آرگومان p بود
834
00:38:01,520 –> 00:38:03,440
ما می توانستیم هر چیزی را قرار دهیم اگر این کار را
835
00:38:03,440 –> 00:38:05,599
انجام ندهی پس من دقیقاً مطمئن نیستم که من
836
00:38:05,599 –> 00:38:06,640
فکر می کنم به طور پیش فرض arg است،
837
00:38:06,640 –> 00:38:09,760
بنابراین از یک نام عمومی استفاده
838
00:38:09,760 –> 00:38:12,400
می کند دوست دارم این را توسط arg
839
00:38:12,400 –> 00:38:13,680
در اینجا قرار دهم، میتوانید
840
00:38:13,680 –> 00:38:17,520
مقداری پیشفرض را در اینجا قرار دهید،
841
00:38:17,520 –> 00:38:21,200
بنابراین اگر میخواهید، اما
842
00:38:21,200 –> 00:38:24,320
بله اجازه دهید آن را
843
00:38:24,320 –> 00:38:29,359
همینطور رها کنیم و این
844
00:38:29,520 –> 00:38:32,800
مشکلی ندارد، بنابراین ما پیوندهایی برای یک نرمالسازی ایجاد کردهایم
845
00:38:32,800 –> 00:38:34,000
846
00:38:34,000 –> 00:38:36,240
و یک چیز دیگر بسیار جالب با
847
00:38:36,240 –> 00:38:37,200
pi وجود دارد. bind
848
00:38:37,200 –> 00:38:40,160
شما در واقع میتوانید مستقیماً از نوع استفاده کنید،
849
00:38:40,160 –> 00:38:41,040
بنابراین
850
00:38:41,040 –> 00:38:44,079
اجازه دهید تابع متقاطع خود را پیوند دهیم
851
00:38:44,079 –> 00:38:46,560
و این بار به جای استفاده از شی pi،
852
00:38:46,560 –> 00:38:48,320
اجازه دهید مستقیماً از
853
00:38:48,320 –> 00:38:53,280
نوع عامل um استفاده کنیم تا
854
00:38:53,280 –> 00:38:57,200
اولین گره خود را در اینجا داشته باشیم، اجازه دهید
855
00:38:57,200 –> 00:39:00,240
آن را به p2 ارسال
856
00:39:00,240 –> 00:39:03,920
کنیم، بنابراین اساساً ما از آن استفاده میکنیم.
857
00:39:03,920 –> 00:39:07,359
مستقیماً داخل آرگومان و برای
858
00:39:07,359 –> 00:39:10,400
تابع return تایپ می کند و در اینجا به سادگی
859
00:39:10,400 –> 00:39:12,880
860
00:39:13,119 –> 00:39:16,800
p1 p100 به اضافه p2 را برمی گرداند و تمام
861
00:39:16,800 –> 00:39:19,440
و بنابراین اگر به اینجا برویم و
862
00:39:19,440 –> 00:39:20,240
همین کار را انجام
863
00:39:20,240 –> 00:39:23,359
دهیم تابع cross را تعریف می کنیم و
864
00:39:23,359 –> 00:39:25,520
آن را به کلاس
865
00:39:25,520 –> 00:39:28,960
c plus منتقل می کنیم. تابع به علاوه کار می کند،
866
00:39:28,960 –> 00:39:33,280
بنابراین tiebine می تواند مستقیماً
867
00:39:33,280 –> 00:39:36,960
از امضای توابع
868
00:39:36,960 –> 00:39:40,240
باند یا باند شما به
869
00:39:40,240 –> 00:39:43,680
یکی از پایتون تبدیل کند، بنابراین باز هم
870
00:39:43,680 –> 00:39:47,839
بسیار مفید است.
871
00:39:47,839 –> 00:39:51,359
872
00:39:51,359 –> 00:39:54,880
برخی از آرگومانها در اینجا
873
00:39:54,880 –> 00:39:59,760
p1 و r
874
00:40:02,800 –> 00:40:04,880
و میتوانید در واقع چیزی وجود دارد که من
875
00:40:04,880 –> 00:40:05,920
به شما نشان ندادم
876
00:40:05,920 –> 00:40:09,359
شما میتوانید فقط یک لامبدا را در اینجا قرار دهید،
877
00:40:09,359 –> 00:40:12,160
بنابراین یک تابع لامبدا یک توابع ناشناس
878
00:40:12,160 –> 00:40:12,960
است
879
00:40:12,960 –> 00:40:16,960
که شبیه به این است.
880
00:40:16,960 –> 00:40:19,760
881
00:40:19,760 –> 00:40:20,640
882
00:40:20,640 –> 00:40:24,640
متغیرهای سراسری یا
883
00:40:24,640 –> 00:40:27,280
محدوده والد که میخواهید
884
00:40:27,280 –> 00:40:29,920
تابع لامبدا شما بتواند به آنها دسترسی
885
00:40:29,920 –> 00:40:34,880
داشته باشد، پارامترهای تابع شما هستند
886
00:40:34,880 –> 00:40:38,480
و این در واقع هسته اصلی
887
00:40:38,480 –> 00:40:41,520
یا داخلی توابع شما
888
00:40:41,520 –> 00:40:44,400
است و ما یک بازگشت انجام میدهیم.
889
00:40:44,400 –> 00:40:46,560
بنابراین همانطور که می بینید
890
00:40:46,560 –> 00:40:47,760
891
00:40:47,760 –> 00:40:49,839
می توانید مستقیماً توابع پایتون یا c plus plus
892
00:40:49,839 –> 00:40:51,920
را برای ماژول پایتون خود
893
00:40:51,920 –> 00:40:55,520
مستقیماً در داخل این تابع ناشناس ایجاد کنید
894
00:40:55,520 –> 00:40:57,839
و بنابراین دیگر به این یکی نیاز ندارید
895
00:40:57,839 –> 00:40:58,880
بنابراین نیکو من
896
00:40:58,880 –> 00:41:01,440
متوجه نشدم که چه چیزی داخل پرانتز است.
897
00:41:01,440 –> 00:41:02,640
898
00:41:02,640 –> 00:41:06,079
بنابراین این است فرض
899
00:41:06,079 –> 00:41:11,200
کنید در اینجا ما یک رشته uh std داریم
900
00:41:13,520 –> 00:41:17,040
و به دلایلی یا بیایید این کار را انجام
901
00:41:17,040 –> 00:41:21,440
دهیم، یک پیروزی به نام
902
00:41:22,319 –> 00:41:26,240
none
903
00:41:26,240 –> 00:41:31,920
داشته باشیم و مساوی با
904
00:41:32,839 –> 00:41:34,880
905
00:41:34,880 –> 00:41:39,599
906
00:41:39,599 –> 00:41:42,640
من است. t
907
00:41:42,640 –> 00:41:45,839
خارج از محدوده این تابع تعریف شده است،
908
00:41:45,839 –> 00:41:49,680
بنابراین در اینجا اگر بخواهیم uh p1 آن کلاس
909
00:41:49,680 –> 00:41:50,240
p2
910
00:41:50,240 –> 00:41:54,319
به اضافه 0 را انجام دهیم، نمیتوانیم آن را پیدا کنیم،
911
00:41:54,319 –> 00:41:57,680
بنابراین میتوانیم آن را به عنوان مثال
912
00:41:57,680 –> 00:42:01,040
به عنوان یک
913
00:42:01,040 –> 00:42:04,079
مرجع در اینجا اضافه کنیم. محدوده داخلی، بنابراین یک scope
914
00:42:04,079 –> 00:42:05,440
915
00:42:05,440 –> 00:42:08,800
همه چیز در کنار دو براکت است،
916
00:42:08,800 –> 00:42:11,839
به این محدوده داخلی اجازه دهید تا بتواند
917
00:42:11,839 –> 00:42:15,839
متغیر خارجی ما را که در اینجا تعریف شده است ببیند، بسیار
918
00:42:15,839 –> 00:42:18,079
خوب است و از آن با مرجع استفاده کنید، اگر
919
00:42:18,079 –> 00:42:20,319
این را حذف کنم، در واقع
920
00:42:20,319 –> 00:42:23,440
این متغیر را در داخل صفر در اینجا کپی
921
00:42:23,440 –> 00:42:26,720
می کند تا به آن دسترسی پیدا کند.
922
00:42:26,720 –> 00:42:30,160
توابع داخلی شما برخی از حافظه ها
923
00:42:30,160 –> 00:42:32,160
خارج از محدوده این
924
00:42:32,160 –> 00:42:34,079
تابع تعریف می کنند، می دانم مطمئن نیستم واضح است یا نه، اما
925
00:42:34,079 –> 00:42:34,800
926
00:42:34,800 –> 00:42:38,560
واضح است ممنون بله
927
00:42:38,880 –> 00:42:45,200
اوه ام، بیایید این را حذف کنیم و آن را
928
00:42:45,200 –> 00:42:47,599
929
00:42:53,280 –> 00:42:55,760
930
00:42:55,760 –> 00:42:57,280
931
00:42:57,280 –> 00:43:00,560
امتحان کنیم. دوباره از این خارج شده
932
00:43:00,560 –> 00:43:04,079
و دوباره آن را وارد کنید،
933
00:43:04,079 –> 00:43:08,079
بنابراین اگر جبر را انجام دادم
934
00:43:08,079 –> 00:43:10,000
بله، بیایید جلو برویم و فقط
935
00:43:10,000 –> 00:43:11,200
به راهنمای
936
00:43:11,200 –> 00:43:14,480
کل ماژول پایتون جبر نگاه کنیم، بنابراین به یاد داشته باشید
937
00:43:14,480 –> 00:43:14,800
938
00:43:14,800 –> 00:43:17,920
که معادل یک نقطه pi است
939
00:43:17,920 –> 00:43:21,440
و توابع مختلف را به ما می دهد،
940
00:43:21,440 –> 00:43:23,760
بنابراین اولین مورد تی است او متقاطع
941
00:43:23,760 –> 00:43:25,200
که ما تعریف می
942
00:43:25,200 –> 00:43:28,800
کنیم P1 طول می کشد و همانطور که می بینید
943
00:43:28,800 –> 00:43:32,240
یک آرایه numpy می گیرد، بنابراین این
944
00:43:32,240 –> 00:43:33,119
چیزی است که
945
00:43:33,119 –> 00:43:37,520
فراموش کردم ذکر کنم pi bind
946
00:43:37,520 –> 00:43:40,960
دوباره به numpy تبدیل می شود، بنابراین خیلی خوب است،
947
00:43:40,960 –> 00:43:44,640
شما هیچ کپی در اینجا ندارید.
948
00:43:44,640 –> 00:43:47,119
مستقیماً ارجاع به
949
00:43:47,119 –> 00:43:49,359
آرایه numpy شما را
950
00:43:49,359 –> 00:43:52,400
که در پایتون ایجاد میکنیم ارسال میکند، بنابراین
951
00:43:52,400 –> 00:43:55,440
فوقالعاده جالب است و شما نیز
952
00:43:55,440 –> 00:43:56,960
چشم عادی ما را دارید، بنابراین
953
00:43:56,960 –> 00:43:58,960
بله و این در واقع چیزی
954
00:43:58,960 –> 00:44:01,200
مهم است که از
955
00:44:01,200 –> 00:44:04,240
pi شی um در
956
00:44:04,240 –> 00:44:07,760
اینجا استفاده میکنید، زیرا خط لوله
957
00:44:07,760 –> 00:44:11,520
به این تابع uh نگاه میکند. امضا برای
958
00:44:11,520 –> 00:44:13,200
تعیین نوع
959
00:44:13,200 –> 00:44:16,079
uh او قادر نخواهد بود بداند که این
960
00:44:16,079 –> 00:44:16,880
شی pi در
961
00:44:16,880 –> 00:44:20,560
واقع یک eagen است زیرا ما این کار را
962
00:44:20,560 –> 00:44:23,680
در اینجا انجام می دهیم uh pieban در
963
00:44:23,680 –> 00:44:26,960
طول تعریف اینجا قادر نیست کارل او نمی
964
00:44:26,960 –> 00:44:28,000
تواند به
965
00:44:28,000 –> 00:44:30,560
داخل این تابع نگاه کند.
966
00:44:30,560 –> 00:44:32,160
نوع صحیح شی pi را دریافت کنید،
967
00:44:32,160 –> 00:44:36,960
به این معنی که برای کمک در
968
00:44:36,960 –> 00:44:40,079
اینجا، نوع p یک شی خواهد بود،
969
00:44:40,079 –> 00:44:42,319
بنابراین این ممکن است
970
00:44:42,319 –> 00:44:43,680
برای مردم گیج کننده باشد،
971
00:44:43,680 –> 00:44:46,720
اوه شی چیست،
972
00:44:46,720 –> 00:44:50,720
در حالی که اگر مستقیماً از نوع اینجا در داخل شیء استفاده کنیم.
973
00:44:50,720 –> 00:44:52,800
س بنابراین اگر
974
00:44:52,800 –> 00:44:54,240
این را حذف کنیم،
975
00:44:54,240 –> 00:44:57,359
به اینجا برمی گردم، بنابراین در اینجا ما در داخل تابع توسعه خود تعریف می کنیم،
976
00:44:57,359 –> 00:44:58,560
977
00:44:58,560 –> 00:45:01,119
ما مستقیماً از نوع مورد نظر خود استفاده می کنیم،
978
00:45:01,119 –> 00:45:02,960
سپس pi bond می
979
00:45:02,960 –> 00:45:06,319
تواند نوع آرگومان را کاهش دهد
980
00:45:06,319 –> 00:45:09,280
و سپس می تواند ایجاد کند، یعنی آن را در آن قرار دهد. این
981
00:45:09,280 –> 00:45:10,800
کمک در
982
00:45:10,800 –> 00:45:13,760
اینجا بسیار مفید است، بنابراین اگر میخواهید
983
00:45:13,760 –> 00:45:15,040
چیزی را پاس کنید
984
00:45:15,040 –> 00:45:18,079
، بیایید سعی کنیم جبری را انجام دهیم
985
00:45:18,079 –> 00:45:21,599
که متقاطع شده و آن را
986
00:45:21,599 –> 00:45:24,640
یک رشته قرار
987
00:45:24,640 –> 00:45:27,359
دهیم و یک آرگومان تابع سازگار به شما میدهد
988
00:45:27,359 –> 00:45:28,079
989
00:45:28,079 –> 00:45:31,119
، قرار است یک آرایه numpy داشته باشد
990
00:45:31,119 –> 00:45:32,480
اما اینطور است.
991
00:45:32,480 –> 00:45:35,599
درگیر با دو رشته است، بنابراین بله
992
00:45:35,599 –> 00:45:38,000
، به کاربر کمک می کند تعیین کند که چه
993
00:45:38,000 –> 00:45:38,640
994
00:45:38,640 –> 00:45:42,800
آرگومان مورد نیاز است. سونی تبدیل
995
00:45:42,800 –> 00:45:46,880
از آرایه numpy به بردار ویژه را تصحیح
996
00:45:46,880 –> 00:45:50,160
می کند زیرا شما از eigen استفاده می کنید
997
00:45:50,160 –> 00:45:54,000
بله در بالا اما آیا با
998
00:45:54,000 –> 00:45:56,720
کتابخانه های دیگر کار می کند یا فقط مختص
999
00:45:56,720 –> 00:45:57,599
eigen است.
1000
00:45:57,599 –> 00:46:00,560
مجدداً خاص است زیرا
1001
00:46:00,560 –> 00:46:01,440
باند پی در واقع
1002
00:46:01,440 –> 00:46:04,720
دوباره باند می شود اگر
1003
00:46:04,720 –> 00:46:07,839
نوع آرایه خود را داشته باشید، باید
1004
00:46:07,839 –> 00:46:10,880
کاری را که در اینجا انجام می شود انجام دهید و
1005
00:46:10,880 –> 00:46:14,480
انجام بسیاری از کارها آسان نیست،
1006
00:46:14,480 –> 00:46:18,160
بنابراین به همین دلیل است که باید از آن
1007
00:46:18,160 –> 00:46:20,240
استفاده کنیم. هر زمان که ممکن است به دست آورید زیرا
1008
00:46:20,240 –> 00:46:22,400
همه چیز از قبل در اینجا انجام شده است،
1009
00:46:22,400 –> 00:46:24,800
لازم نیست این کار را انجام دهید و در پایتون تا
1010
00:46:24,800 –> 00:46:27,440
کنون پایتون 3 ما در واقع باید این کار را
1011
00:46:27,440 –> 00:46:30,880
برای بردارهای مبل خود و مواردی از
1012
00:46:30,880 –> 00:46:31,599
این دست انجام
1013
00:46:31,599 –> 00:46:34,720
دهیم و اوه بله،
1014
00:46:34,720 –> 00:46:36,880
بگذارید بگوییم کمی نامرتب است.
1015
00:46:36,880 –> 00:46:38,560
خیلی جالب
1016
00:46:38,560 –> 00:46:42,000
نیست، ایجاد اشکال و اشکال زدایی آن آسان است،
1017
00:46:42,000 –> 00:46:45,760
بنابراین اگر
1018
00:46:45,760 –> 00:46:47,440
میپرسید چرا
1019
00:46:47,440 –> 00:46:50,960
وقتی از دادههای مبل خود
1020
00:46:50,960 –> 00:46:54,880
با بردارها استفاده میکنید،
1021
00:46:54,880 –> 00:46:57,520
چرا اینقدر سخت و باگ است،
1022
00:46:57,520 –> 00:47:00,000
به این دلیل است که ایجاد اتصالات سخت است.
1023
00:47:00,000 –> 00:47:03,680
آرایهها در سادهترین حالت به علاوه برای
1024
00:47:03,680 –> 00:47:05,119
ظهور پایتون
1025
00:47:05,119 –> 00:47:07,119
به خصوص از آنجایی که شما نمیخواهید
1026
00:47:07,119 –> 00:47:08,720
کپی
1027
00:47:08,720 –> 00:47:10,880
داشته باشید، به همین دلیل است که وقتی
1028
00:47:10,880 –> 00:47:12,240
دوباره از آن استفاده میکنید،
1029
00:47:12,240 –> 00:47:15,440
تمام است، توسط tybine آزمایش میشود، واضح
1030
00:47:15,440 –> 00:47:16,480
است که هر زمان ممکن است راهی برای رفتن
1031
00:47:16,480 –> 00:47:19,119
است، بله، واضح است،
1032
00:47:19,119 –> 00:47:19,599
نه اما
1033
00:47:19,599 –> 00:47:21,520
من فکر میکنم این هم بسیار مهم است،
1034
00:47:21,520 –> 00:47:23,119
بله، زیرا بله،
1035
00:47:23,119 –> 00:47:25,359
این کار زیادی است که ما نمیخواهیم انجام دهیم و
1036
00:47:25,359 –> 00:47:26,800
دقیقاً منشأ
1037
00:47:26,800 –> 00:47:30,240
بسیاری از اشتباهات است، بسیار خوب، خیلی خوب است،
1038
00:47:30,240 –> 00:47:33,599
بنابراین تقریباً 11 آه،
1039
00:47:33,599 –> 00:47:37,040
بیایید درست مبل را عوض کنیم، بنابراین
1040
00:47:37,040 –> 00:47:39,920
من به شما نشان دادم که چگونه یک پیت ایجاد کنید
1041
00:47:39,920 –> 00:47:42,400
پکیج hon با مدلهای تایتان
1042
00:47:42,400 –> 00:47:45,040
هم همینطور است، به عنوان مثال، اوه،
1043
00:47:45,040 –> 00:47:45,760
بله،
1044
00:47:45,760 –> 00:47:47,839
فقط یک چیز دیگر خیلی سریع
1045
00:47:47,839 –> 00:47:49,440
کلاسها را ایجاد نکردیم
1046
00:47:49,440 –> 00:47:51,359
و این فکر میکنم این مهم است، بنابراین
1047
00:47:51,359 –> 00:47:53,839
بیایید به اینجا برگردیم هندسه um خود را ایجاد کنیم
1048
00:47:53,839 –> 00:47:57,280
1049
00:47:57,280 –> 00:47:59,200
، فکر میکنم انجام آن فقط مهم است
1050
00:47:59,200 –> 00:48:00,640
با پایتون در حال حاضر
1051
00:48:00,640 –> 00:48:03,599
چون اساساً این تکلیف
1052
00:48:03,599 –> 00:48:04,720
1053
00:48:04,720 –> 00:48:08,640
تا اینجای کار بوده است، بنابراین دوباره کمی
1054
00:48:08,640 –> 00:48:10,640
سریعتر انجام میدهم، من یک
1055
00:48:10,640 –> 00:48:11,520
راه حل
1056
00:48:11,520 –> 00:48:15,040
دارم که دیروز درست کردم و
1057
00:48:15,040 –> 00:48:18,880
از آن درست استفاده خواهم کرد، بنابراین
1058
00:48:19,680 –> 00:48:23,200
اینجا دوباره دارم vectory um را تعریف می کنم.
1059
00:48:23,200 –> 00:48:26,559
فایل به آن تعلق ندارد
1060
00:48:26,559 –> 00:48:30,000
، آن را اینجا اضافه می کنم، پس بیایید ادامه دهیم،
1061
00:48:30,000 –> 00:48:32,839
اوه بله،
1062
00:48:32,839 –> 00:48:36,400
هندسه فایل cpp را اینجا اضافه
1063
00:48:36,400 –> 00:48:39,119
نمی کنم، زیرا در واقع می خواهم دو تا داشته
1064
00:48:39,119 –> 00:48:41,760
باشم، بنابراین یک جبر می خواهم. بنابراین ماژول پایتون من است
1065
00:48:41,760 –> 00:48:42,880
1066
00:48:42,880 –> 00:48:48,800
و می خواهم هندسه من در
1067
00:48:48,800 –> 00:48:52,000
حال حاضر البته شما در واقع می توانید
1068
00:48:52,000 –> 00:48:55,440
به ازای هر ماژول پایتون، c به اضافه پنج به ازای هر
1069
00:48:55,440 –> 00:48:59,359
ام را اضافه کنید،
1070
00:48:59,359 –> 00:49:03,359
اما فقط می توانید یک نقطه ورودی ایجاد کنید،
1071
00:49:03,359 –> 00:49:06,640
بنابراین به یاد داشته باشید که اگر دوباره به جبر خود برگردم
1072
00:49:06,640 –> 00:49:08,880
که c به علاوه اول
1073
00:49:08,880 –> 00:49:12,319
این ماژول پایتون است. ورود
1074
00:49:12,319 –> 00:49:13,599
ص Oint to the
1075
00:49:13,599 –> 00:49:18,720
um به جبری که sr
1076
00:49:18,720 –> 00:49:21,599
چنین داشت و اینجاست که شما در
1077
00:49:21,599 –> 00:49:22,400
1078
00:49:22,400 –> 00:49:26,160
واقع نام um ماژول خود را ایجاد می کنید که
1079
00:49:26,160 –> 00:49:26,480
1080
00:49:26,480 –> 00:49:30,319
توسط ایمپورت استفاده می شود،
1081
00:49:30,319 –> 00:49:34,960
بنابراین اگر از موارد مختلف استفاده کنید،
1082
00:49:34,960 –> 00:49:39,280
من به um خود در من بازخواهم گشت. اگر فایل cmake را ایجاد
1083
00:49:39,280 –> 00:49:41,520
میکنید اگر از فایلهای c plus plus مختلف استفاده میکنید،
1084
00:49:41,520 –> 00:49:44,079
فقط به یاد داشته باشید که
1085
00:49:44,079 –> 00:49:46,800
این فقط برای یک ماژول پایتون با
1086
00:49:46,800 –> 00:49:48,559
تنها یک نقطه ورودی است
1087
00:49:48,559 –> 00:49:50,559
که باید در یکی از این
1088
00:49:50,559 –> 00:49:52,160
زیپها تعریف شود،
1089
00:49:52,160 –> 00:49:54,400
بنابراین واضح است که کاری که میتوانید انجام دهید ایجاد
1090
00:49:54,400 –> 00:49:55,520
نقطه ورودی است.
1091
00:49:55,520 –> 00:49:58,160
در اینجا اگر کلاسها یا
1092
00:49:58,160 –> 00:50:00,079
تابعهای مختلفی دارید،
1093
00:50:00,079 –> 00:50:04,160
برای مثال یک مثلث cpp ایجاد میکنید
1094
00:50:04,160 –> 00:50:07,920
که کلاس مثلث را متصل میکند
1095
00:50:07,920 –> 00:50:08,480
و آن را
1096
00:50:08,480 –> 00:50:11,520
در مدل هندسه قرار میدهد، بنابراین فعلاً
1097
00:50:11,520 –> 00:50:12,000
از
1098
00:50:12,000 –> 00:50:15,200
این رد میشویم و بیایید آن را ساده نگه داریم،
1099
00:50:15,200 –> 00:50:18,800
بنابراین یک فایل cpp در هر um.
1100
00:50:18,800 –> 00:50:23,520
کتابخانهها دوباره این
1101
00:50:23,520 –> 00:50:26,480
دوباره پیوند داده میشود، زیرا میخواهیم
1102
00:50:26,480 –> 00:50:28,160
دوباره به آن دسترسی داشته
1103
00:50:28,160 –> 00:50:30,559
باشیم و به او میگوییم که
1104
00:50:30,559 –> 00:50:32,000
باینریها را در داخل
1105
00:50:32,000 –> 00:50:35,359
بسته سایت نمونه b خروجی بگیرد، بنابراین
1106
00:50:35,359 –> 00:50:37,920
بیایید فقط یک سؤال سریع و سریع بارگذاری کنیم،
1107
00:50:37,920 –> 00:50:39,280
جانی
1108
00:50:39,280 –> 00:50:42,160
اگر ماژول را انتخاب کنیم چه اتفاقی میافتد. نامی
1109
00:50:42,160 –> 00:50:42,480
که
1110
00:50:42,480 –> 00:50:46,720
قبلاً در پایتون دیگری وجود دارد،
1111
00:50:46,720 –> 00:50:49,440
پس ما یک تضاد خواهیم داشت، شما یک درگیری
1112
00:50:49,440 –> 00:50:50,880
1113
00:50:50,880 –> 00:50:54,800
خواهید داشت و اولین موردی را که پیدا کرد بارگیری می
1114
00:50:54,800 –> 00:50:58,559
کند، بنابراین اگر
1115
00:50:58,559 –> 00:51:02,800
من به مترجم پایتون خود وارد شوم، این کار را انجام
1116
00:51:02,800 –> 00:51:05,440
می دهم که اولین مورد را می گیرد اگر
1117
00:51:05,440 –> 00:51:07,200
آن را در اینجا پیدا میکند، آن را بارگیری میکند،
1118
00:51:07,200 –> 00:51:09,680
سپس به یکی دیگر میرود بله،
1119
00:51:09,680 –> 00:51:10,640
1120
00:51:10,640 –> 00:51:14,960
بله، به همین دلیل است که سعی کنید نامها را داشته باشید
1121
00:51:14,960 –> 00:51:18,640
و اینطور نیست،
1122
00:51:18,640 –> 00:51:20,839
با کتابخانههای محبوب تضاد ایجاد نکنید
1123
00:51:20,839 –> 00:51:23,839
1124
00:51:24,559 –> 00:51:27,680
و به همین دلیل است که بسته در اینجا بسیار
1125
00:51:27,680 –> 00:51:30,480
مفید است زیرا شما می توانید
1126
00:51:30,480 –> 00:51:32,160
بسته ای
1127
00:51:32,160 –> 00:51:34,319
با نام مبل ایجاد کنید که
1128
00:51:34,319 –> 00:51:36,400
1129
00:51:36,400 –> 00:51:39,280
امیدوارانه نباید توسط سایر کتابخانه های استاندارد استفاده شود و
1130
00:51:39,280 –> 00:51:41,520
تا کنون مدل پایتون مثلثی خود را ایجاد کنید
1131
00:51:41,520 –> 00:51:42,480
1132
00:51:42,480 –> 00:51:44,880
که این یکی بسیار
1133
00:51:44,880 –> 00:51:46,160
عمومی است
1134
00:51:46,160 –> 00:51:48,160
اما نباید تضاد ایجاد کند
1135
00:51:48,160 –> 00:51:50,160
زیرا در بسته مبل قرار دارد.
1136
00:51:50,160 –> 00:51:54,319
آره باشه باشه
1137
00:51:54,319 –> 00:51:57,839
درسته پس برو ما جلوتر میرویم و
1138
00:51:57,839 –> 00:52:02,880
در هندسهمان، پس اینجا کلاس داریم
1139
00:52:02,880 –> 00:52:05,200
اینجا سخت است، فقط میخواهم یک
1140
00:52:05,200 –> 00:52:06,800
1141
00:52:06,800 –> 00:52:08,960
پرانتز کوچک برای مردم ایجاد کنم و
1142
00:52:08,960 –> 00:52:11,280
تفاوت بین یک کلاس و یک کلاس
1143
00:52:11,280 –> 00:52:14,000
در شما است. h بسیار بسیار کوچک، اگر
1144
00:52:14,000 –> 00:52:16,160
کلاسی را
1145
00:52:16,160 –> 00:52:19,280
در اینجا در محدوده ایجاد کنید، به یاد داشته باشید که
1146
00:52:19,280 –> 00:52:22,319
محدوده بین این دو براکت است در اینجا
1147
00:52:22,319 –> 00:52:25,839
همه چیزهایی که در اینجا قرار می دهم خصوصی است،
1148
00:52:25,839 –> 00:52:29,280
بنابراین باید public را قبل از راست قرار دهم، بنابراین
1149
00:52:29,280 –> 00:52:31,440
به طور پیش فرض همه چیز در
1150
00:52:31,440 –> 00:52:32,640
کلاس عمومی
1151
00:52:32,640 –> 00:52:36,800
در یک محدوده دقیق است.
1152
00:52:36,800 –> 00:52:40,319
متاسفم همه چیز عمومی است
1153
00:52:40,319 –> 00:52:43,440
در اینجا عمومی است مگر اینکه
1154
00:52:43,440 –> 00:52:45,760
خصوصی
1155
00:52:45,760 –> 00:52:47,760
را مشخص کنید، اساساً تنها تفاوت
1156
00:52:47,760 –> 00:52:48,880
بین این دو است
1157
00:52:48,880 –> 00:52:51,839
که من می دانم اما اوه از نظر باینری
1158
00:52:51,839 –> 00:52:53,440
دقیقاً همان
1159
00:52:53,440 –> 00:52:54,319
چیزی است
1160
00:52:54,319 –> 00:52:56,720
نه و اوه در مورد توابع مجازی
1161
00:52:56,720 –> 00:52:57,440
و
1162
00:52:57,440 –> 00:52:59,760
غیره نه آنها در ساختار موجود هستند
1163
00:52:59,760 –> 00:53:00,800
همچنین شما می
1164
00:53:00,800 –> 00:53:04,319
توانید یک تابع مجازی
1165
00:53:04,319 –> 00:53:06,559
در اینجا ایجاد کنید، بسیار
1166
00:53:07,839 –> 00:53:10,160
خوب
1167
00:53:10,960 –> 00:53:14,800
این امکان پذیر است و شما
1168
00:53:14,800 –> 00:53:18,319
اساساً می توانید یک کلاس t
1169
00:53:18,319 –> 00:53:21,760
یک فرزند ایجاد کنید که
1170
00:53:21,760 –> 00:53:25,370
از یک ساختار [Music] جلوگیری می کند،
1171
00:53:25,370 –> 00:53:27,200
1172
00:53:27,200 –> 00:53:29,440
بنابراین دقیقاً همان چیزی است که به
1173
00:53:29,440 –> 00:53:30,800
طور پیش فرض
1174
00:53:30,800 –> 00:53:32,720
همه چیز را در یک برنامه تخریب می کند. strap
1175
00:53:32,720 –> 00:53:34,720
در کلاس عمومی است، خصوصی خواهد بود،
1176
00:53:34,720 –> 00:53:37,920
خوب است، بنابراین فقط یک
1177
00:53:37,920 –> 00:53:40,880
پارامتر کوچک، بله، خوب، من یک کلاس مثلثی دارم
1178
00:53:40,880 –> 00:53:42,079
1179
00:53:42,079 –> 00:53:45,599
که سازنده را درست تعریف می کند تا
1180
00:53:45,599 –> 00:53:47,119
بتوانید بسازید d یک مثلث برای
1181
00:53:47,119 –> 00:53:50,640
Tree vector3 بنابراین این یک مثلث 3 بعدی است
1182
00:53:50,640 –> 00:53:53,359
و آنها یک تابع عادی دارند، بنابراین
1183
00:53:53,359 –> 00:53:54,240
این c نیست
1184
00:53:54,240 –> 00:53:58,240
به علاوه ما می
1185
00:53:59,520 –> 00:54:02,240
خواهیم بله، ما دوست داریم آن را در پایتون در دسترس قرار دهیم
1186
00:54:02,240 –> 00:54:04,079
تا
1187
00:54:04,079 –> 00:54:07,119
بتوانیم مثلث c به علاوه به علاوه در پایتون ایجاد کنیم.
1188
00:54:07,119 –> 00:54:10,000
ما به جلو می رویم و
1189
00:54:10,000 –> 00:54:10,960
همان کاری را که با جبر انجام دادیم
1190
00:54:10,960 –> 00:54:14,240
با فیبر و ماژول 11 انجام
1191
00:54:14,240 –> 00:54:18,640
می دهیم، این را هندسه می نامیم
1192
00:54:18,640 –> 00:54:20,559
و متغیر داخلی ما که
1193
00:54:20,559 –> 00:54:22,880
نشان دهنده ماژول واقعی پایتون m است،
1194
00:54:22,880 –> 00:54:26,079
اگر بخواهید می توانیم آن را بنامیم.
1195
00:54:26,079 –> 00:54:28,400
هر چیزی اینجا
1196
00:54:28,400 –> 00:54:32,640
خوب است، پس دوباره برای اطمینان
1197
00:54:32,640 –> 00:54:36,640
از کارکرد آن، ما
1198
00:54:36,640 –> 00:54:40,240
این متن کوچک
1199
00:54:40,240 –> 00:54:42,559
1200
00:54:42,720 –> 00:54:46,799
1201
00:54:48,720 –> 00:54:52,079
را خروجی خواهیم داد، بیایید
1202
00:54:52,079 –> 00:54:55,040
به کامپایل این متن ادامه
1203
00:54:55,040 –> 00:54:55,359
1204
00:54:55,359 –> 00:54:57,680
دهیم. در اینجا شما هدف متفاوتی را دارید
1205
00:54:57,680 –> 00:54:58,640
که ما
1206
00:54:58,640 –> 00:55:01,440
جبر و هندسه را تعریف می کنیم، بنابراین من باید
1207
00:55:01,440 –> 00:55:04,319
هندسه را کامپایل کنم
1208
00:55:04,319 –> 00:55:07,720
تا بتوانیم ببینیم که در حال کامپایل کردن
1209
00:55:07,720 –> 00:55:09,520
geometry.cpp است
1210
00:55:09,520 –> 00:55:12,559
و بیایید آن را در مثال b قرار دهیم،
1211
00:55:12,559 –> 00:55:16,640
بنابراین اگر به اینجا برویم، آن را
1212
00:55:16,640 –> 00:55:20,400
انجام می دهیم.
1213
00:55:20,400 –> 00:55:23,680
خوب است پس بیایید به ترمینال خود برگردیم
1214
00:55:23,680 –> 00:55:27,280
امم، بیایید نمونه uh را وارد
1215
00:55:27,280 –> 00:55:29,070
کنیم، بنابراین از
1216
00:55:29,070 –> 00:55:32,239
[Music]
1217
00:55:32,839 –> 00:55:34,319
مثال
1218
00:55:34,319 –> 00:55:38,640
هندسه واردات
1219
00:55:38,640 –> 00:55:41,839
بله که کاملاً بارگذاری شده
1220
00:55:41,839 –> 00:55:45,440
است، بیایید جلو برویم و کلاس خود را متصل کنیم
1221
00:55:45,440 –> 00:55:48,480
و فقط ساعت 11 را بررسی کنیم، بنابراین بسیار خوب، من
1222
00:55:48,480 –> 00:55:50,480
این کار را سریع انجام خواهم داد، همچنین
1223
00:55:50,480 –> 00:55:53,359
خواهید دید که اساساً بسیار آسان است.
1224
00:55:53,359 –> 00:55:55,040
شما
1225
00:55:55,040 –> 00:55:58,640
ای