📜  Python|反转元组

📅  最后修改于: 2022-05-13 01:55:42.874000             🧑  作者: Mango

Python|反转元组

众所周知,在Python中,元组是不可变的,因此无法更改或更改。与列表不同,这为我们提供了有限的反转元组的方法。我们将介绍一些关于如何反转Python中的元组的技术。
例子:

Input : tuples = ('z','a','d','f','g','e','e','k')
Output : ('k', 'e', 'e', 'g', 'f', 'd', 'a', 'z')

Input : tuples = (10, 11, 12, 13, 14, 15)
Output : (15, 14, 13, 12, 11, 10)

方法一:使用切片技术。
在这种技术中,创建了元组的副本,并且元组没有就地排序。由于元组是不可变的,因此无法就地反转元组。创建副本需要更多空间来容纳所有现有元素。因此,这会耗尽内存。

# Reversing a tuple using slicing technique
# New tuple is created
def Reverse(tuples):
    new_tup = tuples[::-1]
    return new_tup
      
# Driver Code
tuples = ('z','a','d','f','g','e','e','k')
print(Reverse(tuples))

输出:

('k', 'e', 'e', 'g', 'f', 'd', 'a', 'z')

方法二:使用 reversed() 内置函数。
在这种方法中,我们不复制元组。相反,我们得到一个反向迭代器,用于循环遍历元组,类似于列表。

# Reversing a list using reversed()
def Reverse(tuples):
    new_tup = ()
    for k in reversed(tuples):
        new_tup = new_tup + (k,)
    print new_tup
  
# Driver Code
tuples = (10, 11, 12, 13, 14, 15)
Reverse(tuples)

输出:

(15, 14, 13, 12, 11, 10)