Рубрики
Без рубрики

Python обращается () – простое руководство с видео

Встроенная функция (последовательность) (последовательности) Python возвращает обратный итератор по значениям заданной последовательности, такой как список, кортеж или строку. Использование Узнайте пример! Вот несколько примеров того, как использовать встроенный обратный (). Наиболее основное использование находится в списке Python: >>> обратный ([1, 2, 3])

Автор оригинала: Chris.

Встроенный Python перевернуты (последовательность) Функция возвращает обратный итератор по значениям заданной последовательности, такой как Список , а кортеж или строка.

использование

Узнайте пример! Вот несколько примеров того, как использовать обратный () Встроенная функция Отказ

Наиболее основное использование находится в списке Python:

>>> reversed([1, 2, 3])

Вы можете увидеть, что возвращаемое значение обратный () Функция не является списком, а объект итератора для причин эффективности. Нет никаких причин создавать новую обращенную структуру данных, просто чтобы пройти последовательность в обратном порядке. Таким образом, если вы хотите создать новый список или кортеж элементов в обращенном порядке, вам необходимо сначала преобразовать вывод в список или кортеж сначала, используя Список () или кортеж () Встроенные функции.

>>> list(reversed([1, 2, 3]))
[3, 2, 1]
>>> tuple(reversed([1, 2, 3]))
(3, 2, 1)

Вы также можете запустить обратный () Функция на струнах:

>>> print(*reversed('retxnif'))
f i n x t e r

Этот пример использует Звездочный оператор распаковать все элементы в обращенном итераторе в Печать () функция.

Синтаксис изменен ()

Вы можете использовать обратный () Способ следующим образом:

Syntax:
reversed(sequence) -> new empty reversed iterator over sequence

Упражнение интерактивных оболочек: понимание обращено ()

Рассмотрим следующий интерактивный код:

Упражнение : Угадай вывод перед запуском кода.

Но прежде чем мы будем двигаться дальше, я рад представить вам мою новую книгу Python Python One-listers (Amazon Link).

Если вам нравятся одноклассники, вы будете любить книгу. Это научит вам все, что нужно знать о Одно строка кода Python. Но это тоже Введение в компьютерную науку , наука о данных, машин обучения и алгоритмы. Вселенная в одной строке Python!

Книга была выпущена в 2020 году с помощью книги по программированию мирового класса Nostarch Press (San Francisco).

Ссылка: https://nostarch.com/pythononeliners.

Сравнение производительности способов обратить список

Существует много способов обратить вспять список с линейной сложностью времени выполнения в количестве элементов. Это основные методы для изменения списка:

  • list.reverse () – Лучше всего, если вы хотите Обратитесь в силу элементов списка на место Отказ
  • Список [:: - 1] – Лучше всего, если вы хотите написать Краткий код, чтобы вернуть новый список с обращенными элементами.
  • Перевернутый (список) – Лучше всего, если вы хотите Итерация по всем элементам списка в обращенном порядке без изменения исходного списка.

Но вы можете спросить, какой самый исполнительный?

Давайте запустим обратный () Метод против разных альтернатив, чтобы изменить список:

def reverse1():
    names = ['Alice', 'Bob', 'Carl', 'Dora']
    names.reverse()

def reverse2():
    names = ['Alice', 'Bob', 'Carl', 'Dora']
    names = names[::-1]

def reverse3():
    names = ['Alice', 'Bob', 'Carl', 'Dora']
    names = reversed(names)

def reverse4():
    names = ['Alice', 'Bob', 'Carl', 'Dora']
    l = []
    for i in range(len(names)-1, -1, -1):
        l.append(names[i])

def reverse5():
    names = ['Alice', 'Bob', 'Carl', 'Dora']
    l = []
    for i in range(1, len(names) + 1):
        l.append(names[-i])

import timeit
print('M1: ', timeit.timeit(reverse1, number=10000), '--> list.reverse()')
print('M2: ', timeit.timeit(reverse2, number=10000), '--> slicing')
print('M3: ', timeit.timeit(reverse3, number=10000), '--> reversed()')
print('M4: ', timeit.timeit(reverse4, number=10000), '--> loop')
print('M5: ', timeit.timeit(reverse5, number=10000), '--> loop + negative index')

Результатом является следующее на моем компьютере (Intel Core I7, 8-й RUN, Python версия 3.7):

M1:  0.0012140999999999957 --> list.reverse()
M2:  0.0016616999999999882 --> slicing
M3:  0.0019155999999999618 --> reversed()
M4:  0.005595399999999973 --> loop
M5:  0.006663499999999989 --> loop + negative index

Интересно увидеть, что наименее читаемые и наименее краткие методы 4 и 5 также самые медленные! Обратите внимание, что мы не преобразовали итератор, возвращаемый обратный () Способ для списка – иначе он добавил бы несколько миллисекунд к результату.

Связанная статья: Как изменить список в Python?

Резюме

Встроенный Python перевернуты (последовательность) Функция возвращает обратный итератор по значениям заданной последовательности, такой как список, кортеж или строку.

>>> list(reversed([1, 2, 3]))
[3, 2, 1]
>>> tuple(reversed([1, 2, 3]))
(3, 2, 1)

Я надеюсь, что вам понравилось статью! Чтобы улучшить свое образование Python, вы можете присоединиться к популярной академии по электронной почте Free Finxter:

Хотите увеличить свои навыки Python в веселой и легкой потребности? Рассмотрим следующие ресурсы и стать магистральным кодером!

Куда пойти отсюда?

Достаточно теории, давайте познакомимся!

Чтобы стать успешным в кодировке, вам нужно выйти туда и решать реальные проблемы для реальных людей. Вот как вы можете легко стать шестифункциональным тренером. И вот как вы польские навыки, которые вам действительно нужны на практике. В конце концов, что такое использование теории обучения, что никто никогда не нуждается?

Практические проекты – это то, как вы обостряете вашу пилу в кодировке!

Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?

Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.

Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.

Присоединяйтесь к свободному вебинару сейчас!

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.

Оригинал: “https://blog.finxter.com/python-reversed/”