Мы можем просмотреть список в Python, используя 8 различных методов.
- Метод 1: с использованием цикла for
- Метод 2: используя цикл for и range()
- Метод 3: используя цикл while
- Метод 4: используя понимание списка
- Метод 5: используя цикл for с лямбда-функцией
- Метод 6: используя цикл for с enumerate()
- Метод 7: с использованием библиотеки numpy
- Метод 8: используя функции iter и next
- Метод 9: с помощью функции zip()
Метод 1: с использованием цикла for
Один из основных способов перебора или перебора списка — использование цикла for в Python.
Ниже приведен пример использования цикла for для обхода списка.
# Defining a list us_states = ['Alaska', 'Arizona', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia'] # Looping through each list element for state in us_states: print(state)
В приведенном выше примере мы запретили список us_states, содержащий несколько названий штатов США.
После этого мы просто использовали цикл for для перебора каждого элемента списка и печати его с помощью функции print().
Вывод вышеуказанной программы Python показан ниже.
Alaska Arizona California Colorado Connecticut Delaware Florida Georgia
Метод 2: используя цикл for и range()
Другой способ пройти по списку — использовать цикл for с функцией range().
Как правило, range() — это встроенная функция Python, которая используется для генерации последовательности чисел.
Вот как мы можем использовать цикл for и range() для перебора списка Python.
# Defining a list cities = ['New York', 'Los Angeles', 'Chicago', 'Houston', 'Phoenix', 'Philadelphia'] # Using for loop and range() for i in range(len(cities)): print(i+1 ,cities[i])
В приведенном выше примере мы вместе используем цикл for и функцию range() для перебора каждого элемента списка. И мы также напечатаем индекс для каждого элемента.
Вот результат работы приведенной выше программы Python.
1 New York 2 Los Angeles 3 Chicago 4 Houston 5 Phoenix 6 Philadelphia
Метод 3: используя цикл while
Помимо цикла for, мы также можем использовать цикл while в Python для перебора или перебора списка.
Пример:
# Defining a list cities = ['New York', 'Los Angeles', 'Chicago', 'Houston', 'Phoenix', 'Philadelphia'] # Defining a counter counter = 0 # Using while loop while counter < len(cities): print(cities[counter]) counter += 1
В приведенном выше коде Python:
- Список городов содержит названия шести городов.
- Переменная-счетчик инициализируется значением 0.
- Цикл while выполняется до тех пор, пока счетчик меньше длины списка городов.
- Внутри цикла текущий элемент списка городов печатается с использованием счетчика в качестве индекса.
- Счетчик увеличивается на 1 в конце каждой итерации.
- Как только счетчик станет равным длине списка городов, цикл завершается.
Вот результат работы приведенной выше программы Python.
New York Los Angeles Chicago Houston Phoenix Philadelphia
Метод 4: используя понимание списка
Понимание списка — это быстрый способ взять список, выполнить определенные операции со всеми элементами списка и сформировать из него новый список.
Однако вместо выполнения какой-либо операции мы можем просто использовать функцию print() в понимании списка. И это приведет к простому циклу по заданному списку.
Пример:
# Defining a list us_states = ['Alaska', 'Arizona', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia'] # Using list comprehension to loop over list and print value [print(state) for state in us_states]
Выполнив вышеуказанную программу Python, мы получим следующий результат.
Alaska Arizona California Colorado Connecticut Delaware Florida Georgia
Метод 5: используя цикл for с лямбда-функцией
Другой метод перебора списка в Python — использование цикла for с лямбда-функцией.
Лямбда-функция в Python — это функция, которую мы можем выполнить всего за одну строку кода. Более того, мы обычно используем лямбда-функцию для выполнения определенной операции с элементом списка.
Пример:
# Defining a list nums = [21, 23, 26, 54, 65] # Defining another list square_nums = [] # Defining lambda func = lambda x: x*x # Using lambda and for loop for x in nums: square_nums.append(func(x)) # Iterating over new list for y in square_nums: print(y)
В приведенном выше примере мы определили список чисел, а затем определили еще один пустой список.
После этого мы определили лямбда-функцию, а затем используем цикл for для перебора элемента списка и выполнения над ним лямбда-функции.
В последнем случае мы добавляем новое значение в список. И как только мы перейдем к новому списку, мы получим следующий результат.
441 529 676 2916 4225
Метод 6: используя цикл for с enumerate()
Enumerate() — это встроенная функция Python, которая позволяет перебирать последовательность, отслеживая при этом индекс текущего элемента. Он возвращает итератор, который возвращает пары, состоящие из индекса и элемента по этому индексу.
Пример:
# Defining a list cities = ['New York', 'Los Angeles', 'Chicago', 'Houston', 'Phoenix', 'Philadelphia'] # Using for loop and enumerate() for index, city in enumerate(cities) : print(index ,city)
Результат работы вышеуказанной программы Python показан ниже.
0 New York 1 Los Angeles 2 Chicago 3 Houston 4 Phoenix 5 Philadelphia
Метод 7: с использованием библиотеки numpy
NumPy — популярная библиотека Python, используемая для научных вычислений на Python.
В этом методе мы создадим массив numpy, используя список в Python, а затем пройдемся по элементам массива, используя цикл for.
Пример:
# Importing numpy import numpy as np # Defining a list cities = ['New York', 'Los Angeles', 'Chicago', 'Houston', 'Phoenix', 'Philadelphia'] city_array = np.array([city for city in cities]) # Looping over an array for name in np.nditer(city_array): print(name)
После выполнения вышеуказанной программы Python мы получим следующий результат.
New York Los Angeles Chicago Houston Phoenix Philadelphia
Метод 8: используя функции iter и next
Для создания и перебора объекта итератора в Python используются встроенные функции iter() и next(). Для представления потоков данных обычно используются итераторы, поскольку их можно повторять (зацикливать).
Теперь мы можем использовать обе эти функции для циклического перемещения по списку в Python.
Пример:
# Defining a list cities = ['New York', 'Los Angeles', 'Chicago', 'Houston', 'Phoenix', 'Philadelphia'] # Creating an iterator city_iterator = iter(cities) # Uisng while loop while True: try: # Using next() to iterate over list items city = next(city_iterator) print(city) except StopIteration: break
- В приведенном выше коде сначала мы определили список с именами городов и создали итерируемый объект с помощью функции iter().
- Затем мы использовали цикл while, а внутри цикла while мы использовали функцию next() для перебора каждого значения, заданного в итерируемом объекте.
Результат работы вышеуказанной программы Python приведен ниже.
Метод 9: с помощью функции zip()
Функция Python zip() позволяет нам одновременно просматривать несколько списков Python.
Давайте возьмем пример, где у нас есть список войн США и годы их начала:
wars = ['Revolutionary War', 'Civil War', 'World War I', 'World War II', 'Vietnam War'] start_years = [1775, 1861, 1914, 1939, 1955] for war, year in zip(wars, start_years): print(f"The {war} started in {year}.")
Выход: