Форум сайта python.su
Как к примеру перевернуть такой tuple
x = ((0L, u'fsdf'),(1L, u'fsdf'),(2L, u'fsdf'), (3L, u'fsdf'))
чтобы результат был наоборот т.е.
x= ((3L, u'fsdf'),(2L, u'fsdf'),(1L, u'fsdf'),(0L, u'fsdf'))
x.reverse() - не работает
Офлайн
Tuple нельзя изменять. На то он и Tuple.
Поэтому:
x = ((0L, u'fsdf'),(1L, u'fsdf'),(2L, u'fsdf'), (3L, u'fsdf'))
x = list(x)
x.reverse()
x = tuple(x)
А вообще, если собираешься изменять последовательность, то нужно сразу списком делать.
x = [,,, ]
или
x =
Офлайн
ok . спасибо
Офлайн
>>> tuple(reversed((1,2,3)))
(3, 2, 1)
Офлайн
угу, причём последний вариант более приемлимый, тк sorted() и reversed() относительно новые фишки, поэтому на старом питоне не покатят.
Офлайн