了解 Python 元组函数 [附示例]

已发表: 2020-03-20

元组是由逗号分隔的序列或对象集合。 它们在许多方面类似于列表,除了元素在创建后不能更改。 与列表不同, Python 中的元组是不可变对象。 此外,它们使用括号而不是方括号。

创建一个元组就像放置用逗号分隔的值一样简单,有时在括号之间。 这里有些例子:

  • tup1 = ('英语', '印地语', 1998, 2016)
  • tup2 = “c”、“d”、“e”、“f”
  • tup3 = (5, 6, 7, 8, 9)

正如你所看到的,一个元组可能有任意数量的元素,它们可能是不同的类型——整数、列表、字符串等等。 使用括号是可选的,但被认为是一个很好的做法。 现在,让我们深入研究细节。

如果您是初学者并且有兴趣了解有关数据科学的更多信息,请查看我们来自顶尖大学的数据科学认证。

阅读: Python 中的运算符

目录

Python中的元组

1. 创建一个元组

一个空元组包含两个括号,里面没有任何内容,即 ()。 以下是创建它的方法:

空_tup = ()

打印(empty_tup)

#输出

()

现在,让我们看看如何创建非空元组。 创建不带括号的元组称为元组打包。

tup='鼠标','键盘'

打印(tup)

#输出

('鼠标','键盘')

或者,您可以对相同的输出使用括号。

tup= ('鼠标', '键盘')

打印(tup)

#输出

('鼠标',键盘')

对于单元素元组,仅将一个成分放在括号内是行不通的。 您必须包含一个尾随逗号以指示它是一个元组。 考虑以下示例。

tup=(50,)

2. 连接、嵌套和重复

在 python 中连接两个元组,可以编写以下代码:

my_tup=(0,1,2,3,4,5)

your_tup=('你好', '再见')

打印(my_tup + your_tup)

#输出

(0,1,2,3,4,5, '你好', '再见')

下面是创建嵌套元组的代码:

tup1=(0,1,2)

tup2=('python', '学习')

tup3=(tup1, tup2)

打印(tup3)

#输出

((0,1,2),('python','learn'))

要创建具有重复的元组,请按照以下步骤操作:

new_tup=('嗨',)*4

打印(new_tup)

#输出

(“嗨”、“嗨”、“嗨”、“嗨”)

在编写上面没有逗号的代码时,您将得到一个字符串 hihihihi,作为 new_tup 的输出。

阅读:前 5 个 Python 模块

3. 访问元组

要访问元组中的值,您可以在索引中使用方括号。 使用下面的代码来测试切片。

元组=(0,1,2,3)

打印(元组 [1:])

打印(元组[::-1])

打印(元组[2:4])

#输出

(1,2,3)

(3,2,1,0)

(2,3)

4. 处理不变性

无法更新或更改元素的值,但您可以通过获取现有元组的一部分来创建新元组,如下面的示例所示。

tuple1=('ab', 'xy')

元组2=(13,14)

#action 对元组无效

#tuple1[0]=50

#创建一个新的元组

元组3=元组1+元组2

打印元组3

#输出

('ab', 'xy', 13, 14)

同样,您不能删除元组中的单个元素,因为它们是不可变的。 但是,您可以将另一个元组放在一起以丢弃不需要的成分。 您可以通过显式使用 del 语句来删除整个元组。

tuple1=('一月',二月')

删除元组1

另请阅读:印度的 Python 开发人员薪水

基本元组操作

python中内置了各种元组函数,如len()、cmp()、max()、min()和tuple(seq)。 让我们一一展示它们的用法。

  • 查找元组的长度

my_tuple = ('升级', 'python')

打印(长度(我的元组))

#输出

2

  • 比较元素

tup1 = ('升级','python')

tup2 = ('编码器', 1)

如果(cmp(tup1,tup2)!= 0):

# cmp() 匹配时返回 0,不匹配时返回 1

# 更长,当 tup1 更短时为 -1

print('不一样')

别的:

打印('相同')

#输出

不一样

  • 最大值和最小值

print ('元组 1,2 中的最大元素:' + str(max(tup1)) + ',' + str(max(tup2)))

print ('元组 1,2 中的最小元素:' + str(min(tup1)) + ',' + str(min(tup2)))

#输出

元组 1,2 中的最大元素:upgrad,coder

元组 1,2 中的最小元素:python,1

您将观察到 max() 和 min() 检查基于 ASCII 值。 如果元组中有两个字符串,python 会检查字符串中的第一个不同字符。

  • 将列表和字符串转换为元组

list1 = [0, 1, 2,3]

打印(元组(list1))

print(tuple('upgrad')) # string 'upgrad'

#输出

(0,1,2,3)

('u','p','g','r','a','d')

在这里,单个参数,例如列表、字符串、集合、字典键,被获取并转换为元组。

如何在循环中创建元组

现在,让我们继续在循环中创建元组。 您可以按照以下 python 代码进行操作。

元组=('python',)

n=3 #循环运行的次数

或 i 在范围内 (int(n)):

元组=(元组,)

打印元组

#输出

(('Python',),)

((('Python',),),)

(((('Python',),),),)

如您所见,有不同的方法可以创建元组并对其进行迭代。

优于列表的优势

Python中的列表和元组通常用于类似情况。 但是由于多种原因,元组比列表更受欢迎。 下面列出了其中一些。

  • 元组用于异构类型的数据。 另一方面,列表更适合同质数据类型。
  • 元组提供了性能提升,因为与列表相比,迭代它们更快。 这归因于它们不可变的性质。
  • 您可以进行元组实现以保持数据写保护。
  • 不可变元素可以用作字典键。

结论

在本文中,我们了解了 Python 中的所有元组,从它们是什么以及如何创建它们到它们的不同操作和好处。 当您在 Python 学习之旅中前进时,这些信息肯定会派上用场!

如果你正在阅读这篇文章,你很可能有成为一名 Python 开发者的雄心壮志。 如果您有兴趣学习 python 并想亲身体验各种工具和库,请查看数据科学中的执行 PG 计划

Python中元组的特点是什么?

在 Python 中,元组是不可更改的对象的有序集合。 在这里,Python 中的对象可以是整数、元组、列表、字符串等。插入顺序被保留,因为输出的显示将取决于插入元素的顺序。 元组是不可变的,一旦将对象添加到元组中,您就无法修改它们。 元组既可以存储相同类型的对象,也可以存储不同类型的对象。 索引在元组中起着重要作用。 您可以将重复项存储在元组中。 您可以在元组中使用正索引和负索引,其中正索引是指正向,负索引是指反向。 您需要使用逗号作为分隔符来分隔元组中的对象。

元组中有内置方法吗?

是的,有两种内置方法可用于元组。 元组是不可变的,添加后不允许更改元组中的对象。 元组对象可以调用两个可用的内置方法,即 count() 和 index()。 count() 将返回任何特定值在整个元组中出现的次数。 index() 将在整个元组中搜索指定的值,并返回找到该值的位置。

为什么元组比 Python 中的列表快?

Python中有可变对象和不可变对象,其中列表属于可变对象,元组属于不可变对象。 元组存储在单个内存块中,不需要额外的空间来存储新对象。

另一方面,列表被分配在两个块中,其中一个块存储对象信息,另一个块具有可变大小以添加新数据。 这是元组比 Python 中的列表更快的主要原因。 这是元组中的索引比列表更快的另一个原因。