Python中的元组到底是什么?
我正在做几次蟒蛇练习,但这一次我被难住了Python中的元组到底是什么?,python,list,tuples,Python,List,Tuples,我正在做几次蟒蛇练习,但这一次我被难住了 # C. sort_last # Given a list of non-empty tuples, return a list sorted in increasing # order by the last element in each tuple. # e.g. [(1, 7), (1, 3), (3, 4, 5), (2, 2)] yields # [(2, 2), (1, 3), (3, 4, 5), (1, 7)] # Hint: use
# C. sort_last
# Given a list of non-empty tuples, return a list sorted in increasing
# order by the last element in each tuple.
# e.g. [(1, 7), (1, 3), (3, 4, 5), (2, 2)] yields
# [(2, 2), (1, 3), (3, 4, 5), (1, 7)]
# Hint: use a custom key= function to extract the last element form each tuple.
def sort_last(tuples):
# +++your code here+++
return
什么是元组?它们是指列表列表吗?元组是Python序列类型中最简单的一种。您可以将其视为不可变(只读)列表: 只需将元组传递到
list()
(与任何iterable一样),即可将元组转换为新列表,而将任何iterable传递到tuple()
,即可将其转换为新元组:
希望这有帮助。另请参见元组和列表非常相似。主要区别(作为用户)是元组是不可变的(不能修改) 在您的示例中:
[(2, 2), (1, 3), (3, 4, 5), (1, 7)]
这是一个元组列表
[…]是列表
(2,2)是一个元组
元组用于将相关变量分组在一起。使用元组通常比编写另一个单用途类更方便。诚然,通过索引访问它们的内容比使用命名成员变量更难理解,但始终可以使用“tuple unpacking”:
def returnTuple(a, b):
return (a, b)
a, b = returnTuple(1, 2)
我读过的列表和元组之间差异的最佳总结如下: 对于这些更有趣(即使细微)的差异,一个常见的总结是元组是异构的,而列表是异构的。换句话说:元组(通常)是不同种类的事物的序列,你将元组作为一个连贯的单元来处理。列表(通常)是同类物品的序列,您可以单独处理这些物品
From:在Python编程中,元组类似于列表。它们之间的区别在于,一旦元组被赋值,我们就无法更改元组的元素,而在列表中,元素是可以更改的。
元组是一系列不可变的Python对象。元组是序列,就像列表一样。元组和列表之间的区别是,元组不能更改,而列表和元组使用括号,而列表使用方括号 创建元组就像放置不同的逗号分隔值一样简单。也可以选择将这些逗号分隔的值放在括号之间。例如−
tup1 = ('Dog', 'Cat', 2222, 555555);
tup2 = (10, 20, 30, 40, 50 );
tup3 = "a", "b", "c", "d";
空元组被写成两个不包含任何内容的括号−
tup1 = ();
要编写包含单个值的元组,必须包含逗号,即使只有一个值−
tup1 = (45,);
与字符串索引一样,元组索引从0开始,可以进行切片、连接等操作。这些练习在哪里?你在用什么教程?@Sergio你能提供一个链接吗?可能是这样的:练习的答案(与元组无关):
import操作符;tuples.sort(key=operator.itemgetter(1))
在Haskell中,列表项必须是相同的类型,而tuple不是。但在Python中并非如此。在Python中,区别在于不变性。
tup1 = ();
tup1 = (45,);