Списки є однією з найбільш використовуваних структур даних у Python. Ми продовжуємо використовувати списки в багатьох різних програмах, від вирішення простих задач до складних. У Python списки замінюють масиви з такими перевагами, як:
- Динамічний за розміром
- Може зберігати елементи різних типів даних в одному списку
Ми можемо отримати доступ до даних просто зі списків у порядку; на відміну від наборів, дані будуть невпорядкованими. Щоб отримати доступ до даних, ми можемо використовувати кілька способів ітерації кожного елемента всередині списку. Цей підручник охоплює всі способи з прикладами.
1. Петлі
list1 = [3, 5, 7, 2, 4] count = 0 while (count <len(list1)): 1 print (list1 [count]) count="count" + < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>We created a list with a few elements. Initially, count = 0. We're printing the element at the 'count' index and incrementing the count in the while loop. When the count reaches the length of the list, the loop will be terminated, and all the elements will already be accessed.</p> <p> <strong>Mechanism:</strong> </p> <table class="table"> <tr> <td>count = 0</td> <td>list1 [0]</td> <td>3</td> </tr> <tr> <td>count = 1</td> <td>list1 [1]</td> <td>5</td> </tr> <tr> <td>count = 2</td> <td>list1 [2]</td> <td>7</td> </tr> <tr> <td>count = 3</td> <td>list1 [3]</td> <td>2</td> </tr> <tr> <td>count = 4</td> <td>list1 [4]</td> <td>4</td> </tr> <tr> <td>count = 5 = len (list1)</td> <td>-</td> <td>-</td> </tr> </table> <ul> <tr><td>Using for loop:</td> </tr></ul> <pre> list1 = [3, 5, 7, 2, 4] for i in list1: print (i) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-2.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>Using for-in, we accessed all the i's, the elements inside the list.</p> <ul> <tr><td>Using for and range:</td> </tr></ul> <pre> list1 = [3, 5, 7, 2, 4] length = len (list1) for i in range (0, len (list1)): print (list1 [i]) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-3.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>The range function helps the 'for' loop to iterate from 0 to the given list's length.</p> <p> <strong>Mechanism:</strong> </p> <table class="table"> <tr> <td>the range gives - 0</td> <td>list1 [0]</td> <td>3</td> </tr> <tr> <td>the range gives - 1</td> <td>list1 [1]</td> <td>5</td> </tr> <tr> <td>the range gives - 2</td> <td>list1 [2]</td> <td>7</td> </tr> <tr> <td>the range gives - 3</td> <td>list1 [3]</td> <td>2</td> </tr> <tr> <td>the range gives - 4</td> <td>list1 [4]</td> <td>4</td> </tr> </table> <ul> <li>The range function doesn't give the last element specified - len (list1) = 5 is not given.</li> </ul> <h2>2. Using List Comprehension</h2> <p>This is the simple and suggested way to iterate through a list in Python.</p> <p> <strong>Code:</strong> </p> <pre> list1 = [3, 5, 7, 2, 4] [print (i) for i in list1] print (' ') [print (list1 [i]) for i in range (0, len (list1))] print (' ') </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-4.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>We can use for loops inside a list comprehension. We used the same for loops we used in the above examples but inside a list in a single line. This way, we can reduce the length of the code and also list comprehension is a very subtle and efficient way to put loops in lists.</p> <h2>3. Using enumerate():</h2> <p>The enumerate function converts the given list into a list of tuples. Another important fact about this function is that it keeps count of the iterations. This is a built-in function in Python.</p> <p> <strong>Code:</strong> </p> <pre> list1 = [3, 5, 7, 2, 4] for i, j in enumerate (list1): print ('index = ', i, 'value: ', j) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-5.webp" alt="How to Iterate through a List in Python"> <h2>4. Using lambda function and map():</h2> <p>These are anonymous functions. There is a function map () in Python that can accept a function as an argument, and it calls the function with every element in the iterable, and a new list with all the elements from the iterable will be returned.</p> <p> <strong>Code:</strong> </p> <pre> list1 = [3, 6, 1, 8, 7] result = list (map (lambda num: num, list1)) print (result) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-6.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>The lambda num: num is given as an input to the map function along with the list. The function will take every single element in the list, accept it, and then return it. The map () function will pass the list elements one by one to the lambda function to return the elements.</p> <h2>What if we want to Iterate Multi-dimensional Lists?</h2> <p>There is an inbuilt module in Python designed to perform operations on multi-dimensional lists.</p> <p> <strong>1. To get numpy:</strong> </p> <p>Check if Python and pip are installed by opening the cmd via search and typing the commands:</p> <p> <strong>Python -version</strong> </p> <p> <strong>Pip --version</strong> </p> <p>If both Python and PIP are present in our system, it is now time to install our library:</p> <p> <strong>2. Open cmd from the start menu</strong> </p> <p> <strong>3. Type the command</strong> </p> <h3>pip install numpy</h3> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python.webp" alt="How to Iterate through a List in Python"> <p>All the library packages, data, and sub-packages will be installed one after the other.</p> <p> <strong>Code:</strong> </p> <pre> import numpy list1 = numpy. arange (9) list1 = list1. reshape (3, 3) for x in numpy. nditer (list1): print (x) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-7.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>We imported the numpy module. Using the arrange method, we created an array with 9 elements. We accessed the list by reshaping it to 3 * 3 (rows * columns) using the reshape. Using the nditer function, we printed each element in the list.</p> <hr></len(list1)):>
Вихід:
Розуміння:
Використовуючи for-in, ми отримали доступ до всіх i, елементів у списку.
list1 = [3, 5, 7, 2, 4] length = len (list1) for i in range (0, len (list1)): print (list1 [i])
Вихід:
Розуміння:
Функція діапазону допомагає циклу «for» виконувати ітерацію від 0 до заданої довжини списку.
версії Android
Механізм:
діапазон дає - 0 | аркуш1 [0] | 3 |
діапазон дає - 1 | аркуш1 [1] | 5 |
діапазон дає - 2 | аркуш1 [2] | 7 |
діапазон дає - 3 | аркуш1 [3] | 2 |
діапазон дає - 4 | аркуш1 [4] | 4 |
- Функція діапазону не дає останній указаний елемент – len (список1) = 5 не вказано.
2. Використання розуміння списку
Це простий і запропонований спосіб проходження списку в Python.
код:
list1 = [3, 5, 7, 2, 4] [print (i) for i in list1] print (' ') [print (list1 [i]) for i in range (0, len (list1))] print (' ')
Вихід:
Розуміння:
що таке структура в структурі даних
Ми можемо використовувати цикли for всередині розуміння списку. Ми використовували ті самі цикли for, що й у наведених вище прикладах, але всередині списку в один рядок. Таким чином ми можемо зменшити довжину коду, а також розуміння списків є дуже тонким і ефективним способом розмістити цикли в списках.
3. Використання enumerate():
Функція enumerate перетворює заданий список на список кортежів. Іншим важливим фактом про цю функцію є те, що вона веде підрахунок ітерацій. Це вбудована функція в Python.
код:
list1 = [3, 5, 7, 2, 4] for i, j in enumerate (list1): print ('index = ', i, 'value: ', j)
Вихід:
4. Використання лямбда-функції та map():
Це анонімні функції. У Python існує функція map (), яка може приймати функцію як аргумент, і вона викликає функцію з кожним елементом у ітерації, і буде повернено новий список з усіма елементами з ітерації.
код:
list1 = [3, 6, 1, 8, 7] result = list (map (lambda num: num, list1)) print (result)
Вихід:
Розуміння:
Лямбда num: num надається як вхідні дані функції map разом зі списком. Функція візьме кожен окремий елемент у списку, прийме його, а потім поверне. Функція map () передаватиме елементи списку один за одним лямбда-функції для повернення елементів.
Що, якщо ми хочемо ітерувати багатовимірні списки?
У Python є вбудований модуль, призначений для виконання операцій над багатовимірними списками.
1. Щоб отримати numpy:
Перевірте, чи інстальовано Python і pip, відкривши cmd через пошук і ввівши команди:
Python -версія
Pip --версія
Якщо в нашій системі присутні і Python, і PIP, настав час встановити нашу бібліотеку:
2. Відкрийте cmd у меню «Пуск».
3. Введіть команду
pip встановити numpy
Усі бібліотечні пакети, дані та підпакети будуть встановлені один за одним.
код:
import numpy list1 = numpy. arange (9) list1 = list1. reshape (3, 3) for x in numpy. nditer (list1): print (x)
Вихід:
лексикографічно
Розуміння:
Ми імпортували модуль numpy. Використовуючи метод arrange, ми створили масив із 9 елементів. Ми отримали доступ до списку, змінивши його форму до 3 * 3 (рядки * стовпці) за допомогою зміни форми. Використовуючи функцію nditer, ми вивели кожен елемент у списку.