Найти - Пользователи
Полная версия: Строка наоборот?
Начало » Python для новичков » Строка наоборот?
1 2
Сергій
Начинающий.
Задача– ряд: 1,2,3,4,5,6,7,8,9,10,11,12 обратить в 12,11,10,9,8,7,6,5,4,3,2,1 ?

+ вывести таблицу типа 12,11,10,9,8,7,6,5,4,3,2,1
11,10,9,8,7,6,5,4,3,2,1,12
10,9,8,7,6,5,4,3,2,1,12,11
9,8,7,6,5,4,3,2,1,12,11,10 и т.д.
bw
>>> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
>>> _[::-1]
[12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
>>> _[1:] + _[:1]
[11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 12]
>>> _[1:] + _[:1]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 12, 11]
>>> _[1:] + _[:1]
[9, 8, 7, 6, 5, 4, 3, 2, 1, 12, 11, 10]
И т.д.

..bw
Сергій
Спасибо!

Как сделать тоже самое с: c, cis, d, es, e, f, fis, g, gis, a, b, h (это латинские обозначения нот :)) ?
Сергій
Уже нашел решение:

>>>

>>> _

>>> _ + _

>>> _ + _

>>> _ + _
и т.д.

Задача 2: программа запрашивает последовательность ( вроде как используется raw_input() ), а потом сама выводит все оставшиеся 11 вариантов. Герой романа “Доктор Фаустус”(Томас Манн), думаю, очень бы даже хотел иметь под рукой такой замечательный скриптик…
Андрей Светлов
Для “повращать последовательность” был специально сделан deque. Он значительно быстрее разрезания/склейки строк. Это так, в скобках.
Сергій
А пример употребления, будь ласка?
Нашел его здесь:
>>> import collections
>>> dir(collections)
но документации в питоне на него нет.
Андрей Светлов
Начнем с документации
Присутствует с Питона 2.4.

>>> from collections import deque
>>> d = deque([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
>>> d
deque([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
>>> d.rotate(1)
>>> d
deque([12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])
>>> d.rotate(4)
>>> d
deque([8, 9, 10, 11, 12, 1, 2, 3, 4, 5, 6, 7])
>>>
Дек - структура данных, “заточенная” на работу с обоими его концами (добавление/удаление) и вращение.
Простейшими примерами использования дека являются стек и очередь (добавление/удаление с одного конца и добавление в один конец а удаление из другого соответственно).
Сергій
Спасибо! Буду разбираться…
bw
Андрей Светлов. Вот за это я и разлюбил Python.

..bw
ZZZ
bw, очень хотелось бы пояснений. Я сам не раз использовал collections.deque и никогда не задумывался о его неудобности.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB