در این مطلب، ویدئو range(len(…)) تقریبا همیشه در پایتون اشتباه است (مبتدی) آنتونی #345 توضیح می دهد با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:07:41
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:03,040 –> 00:00:04,880
سلام و به ویدیوی دیگری در این ویدیو خوش آمدید،
2
00:00:04,880 –> 00:00:07,440
ما در مورد
3
00:00:07,440 –> 00:00:11,840
حلقههای uh و یک اشتباه رایج صحبت میکنیم که
4
00:00:11,840 –> 00:00:13,360
مخصوصاً از برنامهنویسانی که
5
00:00:13,360 –> 00:00:14,880
از زبان
6
00:00:14,880 –> 00:00:18,320
دیگری آمدهاند و همچنین افرادی که تازه وارد پایتون شدهاند، میبینم،
7
00:00:18,320 –> 00:00:20,400
بنابراین میخواهم نشان دهم. شما آن
8
00:00:20,400 –> 00:00:22,880
اشتباه کوچک و ابزار جالبی که می
9
00:00:22,880 –> 00:00:24,960
توانید برای جایگزینی آن استفاده کنید در
10
00:00:24,960 –> 00:00:27,039
واقع دو دستور العمل است، اما بیایید وارد
11
00:00:27,039 –> 00:00:27,840
آن شویم،
12
00:00:27,840 –> 00:00:30,320
بنابراین مشکلی که من زیاد می بینم
13
00:00:30,320 –> 00:00:33,840
در یک اسکریپت پایتون است که می گویند ما داریم
14
00:00:33,840 –> 00:00:35,600
15
00:00:35,600 –> 00:00:37,920
برخی چیزها را نمی دانم ما میخواهیم به اوهمانند دنیاها سلام کنیم
16
00:00:37,920 –> 00:00:38,800
17
00:00:38,800 –> 00:00:41,040
و
18
00:00:41,040 –> 00:00:42,079
اوه
19
00:00:42,079 –> 00:00:44,559
من نمیدانم شخصی
20
00:00:44,559 –> 00:00:46,399
میگوید ما چیزهای بیشتری از این قبیل داشتیم. اوم من
21
00:00:46,399 –> 00:00:48,719
اغلب اشتباهی را میبینم که در آن افراد
22
00:00:48,719 –> 00:00:52,160
4i را در محدوده
23
00:00:52,160 –> 00:00:53,120
24
00:00:53,120 –> 00:00:55,840
Uh محدوده چیزها
25
00:00:55,840 –> 00:00:57,680
انجام میدهند و سپس
26
00:00:57,680 –> 00:01:00,000
میگویند ما میخواهیم این یک لیست شماره دار است
27
00:01:00,000 –> 00:01:00,800
اوه
28
00:01:00,800 –> 00:01:02,399
آنها این کار را انجام می دهند
29
00:01:02,399 –> 00:01:04,239
و سپس سلام
30
00:01:04,239 –> 00:01:05,680
سلام
31
00:01:05,680 –> 00:01:08,159
چیزها من
32
00:01:08,159 –> 00:01:10,840
و اوه این خوب کار می کند
33
00:01:10,840 –> 00:01:13,680
اوه شما می دانید که لیست شماره گذاری شده ما را چاپ می کند
34
00:01:13,680 –> 00:01:16,479
من حدس می زنم که با یک خاموش است بنابراین ما به اضافه
35
00:01:16,479 –> 00:01:18,000
یک
36
00:01:18,000 –> 00:01:20,159
اوه انجام می دهیم تا مطمئن شویم که دریافت می کنیم یک
37
00:01:20,159 –> 00:01:21,439
لیست تک شماره ای اگر این همان چیزی است که
38
00:01:21,439 –> 00:01:23,280
واقعاً می خواهید، می توانید آن را انجام دهید البته
39
00:01:23,280 –> 00:01:25,119
اگر به این نیاز داشتید یک لیست صفر عددی انجام دهید،
40
00:01:25,119 –> 00:01:28,799
اما کمی عجیب است و اوم
41
00:01:28,799 –> 00:01:31,680
اینطور نیست که من این را بنویسم، با توجه به
42
00:01:31,680 –> 00:01:33,119
اینکه چیزهای بیشتری در مورد پایتون می دانم، بنابراین می
43
00:01:33,119 –> 00:01:34,400
خواهم به شما نشان دهم که چگونه
44
00:01:34,400 –> 00:01:35,920
45
00:01:35,920 –> 00:01:38,240
می توانم این را بازنویسی کنم. یک نوع عجیب و غریب به علاوه
46
00:01:38,240 –> 00:01:41,280
یک را حذف کنید و برای جابجایی این خط محدوده
47
00:01:41,280 –> 00:01:42,799
و دلیل اینکه شما
48
00:01:42,799 –> 00:01:44,000
این خط محدوده را حذف می کنید کمی
49
00:01:44,000 –> 00:01:45,920
عجیب است که می دانید
50
00:01:45,920 –> 00:01:47,520
وقتی لیست خود را تکرار می کنید به طور معمول
51
00:01:47,520 –> 00:01:48,479
از آن استفاده می کنید. فقط
52
00:01:48,479 –> 00:01:50,720
میخواهیم آیتمها را دریافت کنیم، سپس باید
53
00:01:50,720 –> 00:01:54,000
بعداً مورد را از این فهرست دوباره بازیابی
54
00:01:54,000 –> 00:01:55,680
کنیم و بهجای آن از
55
00:01:55,680 –> 00:01:58,000
یک داخلی به نام enumerate استفاده میکنیم
56
00:01:58,000 –> 00:02:01,360
و کاری که enumerate انجام میدهد این
57
00:02:01,360 –> 00:02:03,920
است که اگر
58
00:02:03,920 –> 00:02:05,520
دنبالهای در آن
59
00:02:05,520 –> 00:02:08,479
داشته باشید. به شما ایندکس و مقدار
60
00:02:08,479 –> 00:02:10,160
uh را در
61
00:02:10,160 –> 00:02:12,319
تاپل های مکرر می دهد که می توانید ببینید
62
00:02:12,319 –> 00:02:13,920
شاید من باید به جای یک دو سه از abc استفاده می کردم
63
00:02:13,920 –> 00:02:16,480
64
00:02:16,720 –> 00:02:18,080
زیرا اعداد اعداد عدد بعدی
65
00:02:18,080 –> 00:02:19,440
فقط گیج کننده است به هر حال ما می رویم بنابراین
66
00:02:19,440 –> 00:02:21,760
مانند شاخص صفر اولین است
67
00:02:21,760 –> 00:02:24,080
شاخص b و شاخص دوم است c
68
00:02:24,080 –> 00:02:26,959
این راهی به ما می دهد تا
69
00:02:26,959 –> 00:02:29,040
بدانید که هم شاخص و هم
70
00:02:29,040 –> 00:02:30,480
مقدار را دارید در حالی که همزمان در حال چرخش هستیم،
71
00:02:30,480 –> 00:02:32,000
72
00:02:32,000 –> 00:02:34,480
همچنین می توانید آن را شروع کنید
73
00:02:34,480 –> 00:02:37,599
یا به درستی بله تماس بگیرید
74
00:02:37,599 –> 00:02:39,440
تا بتوانیم این تغییر را تغییر دهیم
75
00:02:39,440 –> 00:02:41,360
که از کجا آمده است. در اینجا از آن برای
76
00:02:41,360 –> 00:02:43,120
جایگزینی این حلقه استفاده می کنیم، ما
77
00:02:43,120 –> 00:02:44,000
برای
78
00:02:44,000 –> 00:02:45,519
i و
79
00:02:45,519 –> 00:02:46,800
uh
80
00:02:46,800 –> 00:02:48,160
چیزهایی را
81
00:02:48,160 –> 00:02:51,599
در برشمردن چیزها انجام می دهیم
82
00:02:51,599 –> 00:02:53,040
و بنابراین کاری که ما در اینجا انجام می دهیم این است که ما
83
00:02:53,040 –> 00:02:56,160
تاپل را در این باز می کنیم اوه
84
00:02:56,160 –> 00:02:57,599
شما این دو مقدار را در اینجا می دانید
85
00:02:57,599 –> 00:02:59,120
با تخصیص آنها به هر یک از
86
00:02:59,120 –> 00:03:02,159
متغیرهای خود، شاخص را به i
87
00:03:02,159 –> 00:03:04,720
و مقدار واقعی را به یک چیز تبدیل می کنیم،
88
00:03:04,720 –> 00:03:08,159
بنابراین اگر این
89
00:03:08,159 –> 00:03:10,159
کار را انجام دهیم همچنان باید کار کند،
90
00:03:10,159 –> 00:03:12,239
ما هنوز از شر آن به علاوه
91
00:03:12,239 –> 00:03:14,400
یک خلاص نشده ایم، اما می توانیم خلاص شویم. از آن بعلاوه یک
92
00:03:14,400 –> 00:03:17,680
با مشخص کردن اینکه شاخص از کجا شروع میشود، بنابراین
93
00:03:17,680 –> 00:03:19,920
94
00:03:19,920 –> 00:03:21,440
95
00:03:21,440 –> 00:03:24,319
اگر میخواهید یک لیست شمارهدار تولید کنید، میتوانیم آن را به جای شروع از صفر، از یک شروع کنیم
96
00:03:24,319 –> 00:03:26,080
و من فکر میکنم این تمام چیزی است که برای
97
00:03:26,080 –> 00:03:27,840
98
00:03:27,840 –> 00:03:30,640
شمارش وجود دارد، آیا چیز دیگری در اینجا وجود دارد،
99
00:03:30,640 –> 00:03:32,560
بله، آیا اینها تنها گزینه ها هستند،
100
00:03:32,560 –> 00:03:33,360
بنابراین
101
00:03:33,360 –> 00:03:35,120
یک مقدار تکراری طول می کشد rval
102
00:03:35,120 –> 00:03:36,239
میتواند یک لیست باشد، میتواند یک تاپلی باشد،
103
00:03:36,239 –> 00:03:38,319
میتواند یک ژنراتور باشد، میتواند یک
104
00:03:38,319 –> 00:03:40,879
تکرارکننده سفارشی باشد، و شروع میکند
105
00:0