Python 元组(tuple)是什么?和列表(list)有什么区别?

yizhihongxing

Python 元组(tuple)是什么?和列表(list)有什么区别?

元组(tuple)与列表(list)的区别

Python中的元组(tuple),其实也是一种序列。

它和列表(list)大体相同,都是由一系列元素排列组成。不同的是,列表中的元素支持新增、修改、删除,是可变序列;而元组不允许新增、修改、删除其中的元素,是不可变序列。

所以,元组比列表更加稳定,一般用来保存无需变更的内容。

Python 元组的语法格式为:(元素1,元素2,元素3...)。

其中元素的数据类型没有限制,可以是整数、字符串、列表、布尔,甚至是元组等任何类型的数据。比如:("pythonjishu.com",1,['a','b'],True,('abcd',100)),这样也是可以的。

Python 元组的创建方式

元组的创建方式有两种,第一种是使用英文括号"()创建,另外一种是使用Python自带的tuple函数创建。

使用()创建

此方法很简单,语法格式为:变量名 = (元素1,元素2,元素3...)。

例如:


number = (1,2,3,4,5)
str1 = ('Python教程','Python技术站','http://www.pythonjishu.com')

以上写法都是正确的。

另外,定义元组变量时,也可以省略掉小括号"()",元素之间用逗号隔开。比如:

str2 = "Python技术站","http://www.pythonjishu.com"
print(str2)

输出结果为:

('Python技术站', 'http://www.pythonjishu.com')

需要注意的是,如果定义的元组只有一个元素,那么该元素后面必须加一个逗号,否则Python解释器会将其视作字符串类型:

#带逗号
site = ('http://www.pythonjishu.com',)
print(site)

#不带逗号
site2 = ('http://www.pythonjishu.com')
print(site2)

输出结果为:

('http://www.pythonjishu.com',)
http://www.pythonjishu.com

使用tuple()函数创建

第二种创建元素的方法为使用内置函数tuple()。

tuple()的语法格式为:tuple(参数值)。

tuple函数的参数值可以是字符串、元组、列表等对象,tuple函数会将其转换为元组。

例如:

#字符串转换为元组
tup1 = tuple('python')
print(tup1)

#列表转换为元组
tup2 = tuple(['a','b','c','d'])
print(tup2)

#创建空元组
tup3= tuple()
print(tup3)

输出结果为:

('p', 'y', 't', 'h', 'o', 'n')
('a', 'b', 'c', 'd')
()

Python 访问元组元素

同列表一样,元组的访问可以使用索引方式,也可以使用切片方式访问。

使用索引访问元组元素的语法格式为:元组变量[索引值]。

使用切片访问元组元素的格式为:元组变量[起始索引值:结束索引值]。

举例说明:


url = tuple("http://www.pythonjishu.com")

#使用索引访问
print(url[9])

#使用切片访问
print(url[3:10])

输出结果为:

w
('p', ':', '/', '/', 'w', 'w', 'w')

Python 新增、修改元组

上文我们已经说过,元组是不可变序列,元组中的元素不能被直接修改,但我们可以间接地进行修改。

例如,我们可以对元组变量重新进行赋值,如下:

tup1 = tuple((1,2,3,4,5))
print(tup1)

tup1 = tuple(('a','b','c','d'))
print(tup1)

运行结果为:

(1, 2, 3, 4, 5)
('a', 'b', 'c', 'd')

另外,我们可以使用“+”加号连接两个元组,使其拼接为一个元组。例如:

tup1 = (1,2,3)
tup2 = (3.14,0.25,5.99)

print(tup1+tup2)

运行结果为:

(1, 2, 3, 3.14, 0.25, 5.99)

Python 删除元组

Python中可以使用关键字 del 删除元组,比如:

tup1 = ('Python技术站','http://www.pythonjishu.com')
print(tup1)
del tup1
print(tup1)

运行结果为:

('Python技术站', 'http://www.pythonjishu.com')
Traceback (most recent call last):
File "C:/Users/Lenovo/AppData/Local/Programs/Python/Python311/demo/demo1.py", line 4, in
print(tup1)
NameError: name 'tup1' is not defined. Did you mean: 'tuple'?

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 元组(tuple)是什么?和列表(list)有什么区别? - Python技术站

(0)
上一篇 2023年1月29日 下午12:00
下一篇 2023年2月14日 下午8:58

相关文章

  • Python 删除对象方法__del__()详解

    在Python中,del()是一种特殊的方法,也称为析构方法,用于定义一个对象在被销毁之前要执行的操作。当Python解释器确定某个对象没有被任何引用指向时,就会调用该对象的del()方法来进行销毁操作。在本文中,我们将详细讲解Python中的del()方法。 Python del()方法基本用法 del()方法是Python中的一种特殊方法,用于定义一个对…

    2023年2月23日
    00
  • 编译器与解释器原理

    上一章我们已经了解到,编程语言其实就是一种我们人类易于理解的程序语言。我们用这种编程语言编写的程序就称为源代码。这些源代码是通过翻译器这么个东西,被翻译成二进制指令,从而让计算机能够执行我们的指令。 那么,这其中发挥很大作用的翻译器又是怎么回事? 编译型语言与解释型语言 其实,翻译器不止一种。我们根据翻译器翻译的时机,将它分为了编译器和解释器。 相应的,编程…

    2022年10月25日
    00
  • Python如何表示绝对路径、相对路径?

    在Python中,文件系统路径可以使用绝对路径或相对路径来表示。绝对路径是指从文件系统的根目录开始的完整路径,而相对路径是指相对于当前目录的路径。 Python中的绝对路径可以通过以下方式表示: 在Unix和Linux系统中,绝对路径以斜杠(/)开头。在Windows系统中,绝对路径以驱动器名(如C:)或两个反斜杠(\)开头。例如,在Unix/Linux系统…

    2023年2月25日
    00
  • Python 位运算符详解(原理、作用、使用方法)

    什么是位运算 Python的位运算操作的是数据存储在内存中的二进制位,一般用于底层程序的开发,如驱动、图像处理、单片机等,如果你不关注底层开发,可以跳过本节,等到有实际需要时再去学习也是可以的。 由于Python位运算符计算的是存储在内存中的二进制数据(只计算0和1),所以它只能操作整数int类型。Python中的位运算符有以下: 位运算符 说明 使用方式 …

    2023年2月14日
    00
  • 详解 Python 函数装饰器的3种用法

    Python 函数装饰器是一种特殊的函数,它有两个特点: 它可以接收一个函数作为参数,并返回一个新的函数作为此函数的替代。 它可以在不改变原有函数代码的情况下,增强原函数的功能或者修改原函数的行为。 装饰器本质上是一个闭包函数,它的目的是对原函数进行一层包装,以增强函数的功能或者修改函数的行为。 Python 装饰器语法 Python 装饰器的语法如下: @…

    2023年2月23日
    10
  • Python if else语句嵌套实例说明

    在Python中,if语句可以嵌套,这允许您编写更复杂的条件语句。if语句的嵌套语法与其他编程语言非常相似,即在一个if语句块内嵌套另一个if语句块。 以下是一个示例: age = 20 if age > 18: print("成年人") if age > 21: print("可以购买酒精饮料") eli…

    2023年2月15日
    00
  • Python生成器详解

    Python中的生成器(Generator)是一种特殊的迭代器,它使用了yield关键字来返回可迭代对象的一部分,从而节省了大量的内存和计算时间。 本文将对Python中的生成器进行详细的讲解。 Python 生成器的定义 在Python中,生成器是一种特殊的函数,它的定义方式与普通函数相同,只不过它使用了yield关键字,例如: def my_genera…

    2023年2月23日
    00
  • Python 比较运算符

    比较运算符 比较运算符,顾名思义,它用于对常量、变量或表达式的结果进行大小、是否相同的比较。比较的结果为 bool 类型,如果结果成立,则返回 True(真),反之则返回 False(假)。 以下是 Python 所有的比较运算符。 比较运算符 说明 > 大于,如果>前面的值大于后面的值,则返回 True,否则返回 False。 < 小于,…

    Python运算符 2023年1月8日
    00
合作推广
合作推广
分享本页
返回顶部