Danh sách tương đương với các mảng trong các ngôn ngữ khác, với lợi ích bổ sung là kích thước năng động. Trong Python, danh sách này là một loại container trong các cấu trúc dữ liệu, được sử dụng để lưu trữ nhiều dữ liệu cùng một lúc. Không giống như các bộ, danh sách trong Python được đặt hàng và có số lượng xác định.
Có nhiều cách để lặp lại một danh sách trong Python. Hãy cùng xem tất cả các cách khác nhau để lặp lại một danh sách trong Python và so sánh hiệu suất giữa chúng.
Phương pháp số 1: Sử dụng cho Loop & NBSP; Using For loop
Python3
list
______7
1 3 5 7 99
1 3 5 7 90
1 3 5 7 91
list
1 3 5 7 93
1 3 5 7 94
1 3 5 7 95
1 3 5 7 96
Output:
1 3 5 7 9
Phương pháp số 2: Đối với vòng lặp và phạm vi [] trong trường hợp chúng tôi muốn sử dụng vòng lặp truyền thống cho vòng lặp từ số X đến số Y. & NBSP; & NBSP;For loop and range[]
In case we want to use the traditional for loop
which iterates from number x to number y.
Python3
list
______7
1 3 5 7 99
1 3 5 7 90
1 3 5 7 91
list
1 3 5 7 93
Phương pháp số 2: Đối với vòng lặp và phạm vi [] trong trường hợp chúng tôi muốn sử dụng vòng lặp truyền thống cho vòng lặp từ số X đến số Y. & NBSP; & NBSP;
1 3 5 7 94
1 3 5 7 95
0 , 1 1 , 3 2 , 5 3 , 7 4 , 93
list
0 1 2 3 4 5 6 7 85
Output:
1 3 5 7 9
0 , 1 1 , 3 2 , 5 3 , 7 4 , 90
=
0 , 1 1 , 3 2 , 5 3 , 7 4 , 92
0 , 1 1 , 3 2 , 5 3 , 7 4 , 93
list
0 , 1 1 , 3 2 , 5 3 , 7 4 , 95
Method #3: Using while loop
Python3
list
______7
1 3 5 7 99
1 3 5 7 90
1 3 5 7 91
list
1 3 5 7 93
Phương pháp số 2: Đối với vòng lặp và phạm vi [] trong trường hợp chúng tôi muốn sử dụng vòng lặp truyền thống cho vòng lặp từ số X đến số Y. & NBSP; & NBSP;
0 , 1 1 , 3 2 , 5 3 , 7 4 , 90
=
0 , 1 1 , 3 2 , 5 3 , 7 4 , 92
0 , 1 1 , 3 2 , 5 3 , 7 4 , 93
list
0 , 1 1 , 3 2 , 5 3 , 7 4 , 95
1 3 5 7 94
1 3 5 7 95
0 , 1 1 , 3 2 , 5 3 , 7 4 , 93
list
0 1 2 3 4 5 6 7 85
1 3 5 7 99
1 3 5 7 90
1 3 5 7 91
0 , 1 1 , 3 2 , 5 3 , 7 4 , 99
0 1 2 3 4 5 6 7 80
Output:
1 3 5 7 9
Việc lặp lại bằng cách sử dụng chỉ mục không được khuyến nghị nếu chúng ta có thể lặp lại các phần tử [như được thực hiện trong Phương pháp #1]. Using list comprehension [Possibly the most concrete way].
Python3
list
______7
1 3 5 7 99
1 3 5 7 90
1 3 5 7 91
list
1 3 5 7 93
Output:
1 3 5 7 9
Phương pháp số 2: Đối với vòng lặp và phạm vi [] trong trường hợp chúng tôi muốn sử dụng vòng lặp truyền thống cho vòng lặp từ số X đến số Y. & NBSP; & NBSP; Using enumerate[]
If we want to convert the list into an iterable list of tuples [or get the index based on a condition check, for example in linear search you might need to save the index of minimum element], you
can use the enumerate[] function.
Python3
list
______7
1 3 5 7 99
1 3 5 7 90
1 3 5 7 91
list
1 3 5 7 93
Phương pháp số 2: Đối với vòng lặp và phạm vi [] trong trường hợp chúng tôi muốn sử dụng vòng lặp truyền thống cho vòng lặp từ số X đến số Y. & NBSP; & NBSP;
Output:
0 , 1 1 , 3 2 , 5 3 , 7 4 , 9
0 , 1
1 , 3
2 , 5
3 , 7
4 , 9
0=
0 , 1
1 , 3
2 , 5
3 , 7
4 , 9
20 , 1
1 , 3
2 , 5
3 , 7
4 , 9
3list
0 , 1
1 , 3
2 , 5
3 , 7
4 , 9
5Even method #2 can be used to find the index, but method #1 can’t [Unless an extra
variable is incremented every iteration] and method #5 gives a concise representation of this indexing.
Method #6: Using numpy
For very large n-dimensional lists [for example an image array], it is sometimes better to use an external library such as numpy.
Python3
1 3 5 7 99
1 3 5 7 90
1 3 5 7 91
0 , 1 1 , 3 2 , 5 3 , 7 4 , 99
0 1 2 3 4 5 6 7 80
Việc lặp lại bằng cách sử dụng chỉ mục không được khuyến nghị nếu chúng ta có thể lặp lại các phần tử [như được thực hiện trong Phương pháp #1].
1 3 5 7 90____7
=
7=
8 =
9
1 3 5 7 94
1 3 5 7 95
1 3 5 7 956
Output:
0 1 2 3 4 5 6 7 8
1 3 5 7 94
1 3 5 7 90
[
77 1