در این مطلب، ویدئو python: چرا reload() ایده بدی است (مبتدی – متوسط) آنتونی #305 توضیح می دهد با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:05:10
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:03,040 –> 00:00:04,720
سلام و به ویدیوی دیگری در این ویدیو خوش آمدید،
2
00:00:04,720 –> 00:00:05,759
ما در مورد
3
00:00:05,759 –> 00:00:07,120
عملکرد بارگذاری مجدد
4
00:00:07,120 –> 00:00:09,440
در پایتون صحبت خواهیم کرد که قبلاً در پایتون ساخته شده
5
00:00:09,440 –> 00:00:11,440
بود اما دیگر در پایتون 3 وجود ندارد اما
6
00:00:11,440 –> 00:00:12,320
هنوز هم می
7
00:00:12,320 –> 00:00:14,960
توانید آن را پیدا کنید اما بله به هر حال بیایید وارد آن شویم.
8
00:00:14,960 –> 00:00:16,400
آن را توضیح دهید و توضیح دهید
9
00:00:16,400 –> 00:00:19,279
که اینجا چه خبر است، بنابراین
10
00:00:19,279 –> 00:00:20,960
بارگذاری مجدد
11
00:00:20,960 –> 00:00:24,080
چیزی است که تابع reload سعی می کند
12
00:00:24,080 –> 00:00:27,680
یک ماژول را دوباره وارد
13
00:00:27,680 –> 00:00:30,720
14
00:00:30,720 –> 00:00:33,360
کند، اما همیشه در آن فوق العاده خوب نیست و
15
00:00:33,360 –> 00:00:33,840
16
00:00:33,840 –> 00:00:36,320
بسیار هک است و بسیاری از کدها را می شکند،
17
00:00:36,320 –> 00:00:38,000
بنابراین معمولاً نباید این کار را انجام دهید. از این تابع استفاده
18
00:00:38,000 –> 00:00:38,960
19
00:00:38,960 –> 00:00:41,040
نمیکنم، اما من میخواستم آن را به شما نشان دهم و
20
00:00:41,040 –> 00:00:42,640
میخواستم چند مورد را به شما نشان دهم که ممکن است
21
00:00:42,640 –> 00:00:43,680
کارها
22
00:00:43,680 –> 00:00:46,320
واقعاً اشتباه پیش برود، بنابراین
23
00:00:46,320 –> 00:00:47,280
بیایید با
24
00:00:47,280 –> 00:00:50,719
ساختن یک فایل پایتون شروع کنیم
25
00:00:50,719 –> 00:00:52,160
و من فقط یک کلاس قرار میدهم. در
26
00:00:52,160 –> 00:00:54,690
اینجا من همچنین می خواهم
27
00:00:54,690 –> 00:00:56,399
[Music] را قرار
28
00:00:56,399 –> 00:00:58,399
دهم، من یک ثابت منحصر به فرد جهانی نمی شناسم، بنابراین
29
00:00:58,399 –> 00:01:00,480
یک تکنفره بنابراین
30
00:01:00,480 –> 00:01:03,680
نمی دانم مکان
31
00:01:03,680 –> 00:01:05,760
نگهدار برابر با شی است، بنابراین این چیزی است که
32
00:01:05,760 –> 00:01:07,360
باید در طول فرآیند و غیره منحصر به فرد باشد
33
00:01:07,360 –> 00:01:08,799
34
00:01:08,799 –> 00:01:10,320
و چیزی که ما داریم قرار است انجام دهیم این است که ما
35
00:01:10,320 –> 00:01:12,080
قصد داریم از این مدل وارد کنیم
36
00:01:12,080 –> 00:01:15,439
بنابراین از t import placeholder و از t
37
00:01:15,439 –> 00:01:18,080
import c نیز میخواهم t را وارد کنم تا
38
00:01:18,080 –> 00:01:21,439
بتوانم بعداً Reload را روی آن فراخوانی کنم
39
00:01:21,439 –> 00:01:23,280
و اگر میخواهم تابع دیگری را
40
00:01:23,280 –> 00:01:24,640
در اینجا بنویسم، بنابراین بیایید بگوییم که
41
00:01:24,640 –> 00:01:28,720
شما سطحی را
42
00:01:28,720 –> 00:01:32,000
میشناسید که فقط چاپ میکند سلام سلام و من
43
00:01:32,000 –> 00:01:32,799
به
44
00:01:32,799 –> 00:01:36,400
شما میروم میدانم که آن تابع را سلام
45
00:01:36,400 –> 00:01:37,680
کنید، خواهید دید که در این تابع در دسترس نیست
46
00:01:37,680 –> 00:01:39,360
و حتی اگر
47
00:01:39,360 –> 00:01:40,079
چیزی را دوباره وارد کنم
48
00:01:40,079 –> 00:01:42,000
که اصلاً تغییری در آن ایجاد نکند،
49
00:01:42,000 –> 00:01:43,840
بنابراین آنچه که Import واقعاً انجام میدهد
50
00:01:43,840 –> 00:01:46,000
وجود دارد. مجموعه ای جهانی از ماژول ها
51
00:01:46,000 –> 00:01:48,240
و آنها در ماژول sys در ماژول های sysdot زندگی می کنند
52
00:01:48,240 –> 00:01:50,000
53
00:01:50,000 –> 00:01:53,200
و بنابراین ماژول اینجا همیشه
54
00:01:53,200 –> 00:01:54,000
یکسان خواهد بود
55
00:01:54,000 –> 00:01:55,600
و آنچه import انجام می دهد این است که اساساً
56
00:01:55,600 –> 00:01:57,360
بررسی می کند که آیا آن ماژول قبلاً در
57
00:01:57,360 –> 00:01:58,960
ماژول های sysdot است یا خیر فقط آن را
58
00:01:58,960 –> 00:02:00,079
دوباره برمی گرداند
59
00:02:00,079 –> 00:02:02,079
، هیچ عارضه جانبی دیگری ایجاد نمی کند، بنابراین
60
00:02:02,079 –> 00:02:03,840
فقط اولین وارداتی که اتفاق می افتد
61
00:02:03,840 –> 00:02:05,360
باعث می شود ماژول وارد شود،
62
00:02:05,360 –> 00:02:06,960
63
00:02:06,960 –> 00:02:10,318
اما کاری که می توانید انجام دهید این است که می توانید از
64
00:02:10,318 –> 00:02:13,120
import lib dot reload استفاده کنید، بنابراین اگر
65
00:02:13,120 –> 00:02:14,480
import lib
66
00:02:14,480 –> 00:02:16,640
را وارد کنیم، زیرا واردات ماشین آلات وارداتی
67
00:02:16,640 –> 00:02:17,599
در پایتون زندگی می کنند
68
00:02:17,599 –> 00:02:21,440
میتوانید مستقیماً به آن دسترسی داشته
69
00:02:21,440 –> 00:02:23,920
باشید و اگر lib.reload یا در
70
00:02:23,920 –> 00:02:27,280
پایتون 2 وارد کنید، قبلاً داخلی بود،
71
00:02:27,280 –> 00:02:28,800
این الگو به قدری رایج بود که
72
00:02:28,800 –> 00:02:30,879
یک um داخلی بود و به import lib منتقل شد
73
00:02:30,879 –> 00:02:31,599
74
00:02:31,599 –> 00:02:33,840
زیرا بسیار خطا است- مستعد و
75
00:02:33,840 –> 00:02:35,519
چیزی که
76
00:02:35,519 –> 00:02:36,959
واقعاً نباید