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

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技术站

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

相关文章

  • 实现Python封装的4种常用方法!

    封装(Encapsulation),即在设计类时,刻意地将一些属性和方法隐藏在类的内部,这样在使用此类时,将无法直接以“类对象.属性名”(或者“类对象.方法名(参数)”)的形式调用这些属性(或方法),而只能用未隐藏的类方法间接操作这些隐藏的属性和方法。 在Python中,封装是一种面向对象编程中的重要概念,它是指将对象的内部状态和行为隐藏起来,只暴露必要的接…

    2023年2月22日
    00
  • Python进行模块化编程的优点、使用方法

    Python模块化编程是一种将大型代码库分解成小的、独立的代码单元的方法。它有助于提高代码的可维护性、可重用性、可扩展性和可测试性。 本文将详细讲解Python模块化编程的概念、优点、如何创建和使用模块,以及如何避免模块命名冲突等问题。 什么是Python模块化编程? 模块化编程指的是将程序分解成小的独立模块的编程风格。Python中的模块可以理解为一个.p…

    2023年2月25日
    00
  • Python 设置(setattr)、获取(getattr)、检查(hasattr)对象属性函数详解!

    在 Python 中,我们可以使用三个内置函数 setattr()、getattr()、hasattr() 分别来设置、获取和检查对象的属性。 Python设置对象属性:setattr() 函数 setattr() 函数用于设置对象属性值,语法如下: setattr(object, name, value) 其中,object 表示要设置属性的对象,name…

    2023年2月23日
    00
  • Python创建临时文件与目录:tempfile模块详解

    tempfile 模块是 Python 内置的用于处理临时文件和目录的模块,它提供了一种创建临时文件和目录的方法,这些文件和目录可以在脚本执行完成后自动删除。本篇文章将详细介绍 tempfile 模块的使用方法。 创建临时文件 我们可以使用 tempfile 模块的 TemporaryFile() 函数创建一个临时文件,这个函数创建的临时文件默认是二进制模式…

    2023年2月25日
    00
  • Python 函数返回符(return)详解

    在 Python 中,return 语句用于从函数中返回一个值。当函数调用一个 return 语句时,函数的执行将停止,并将一个值返回给函数调用者。在函数中使用 return 语句可以返回任何类型的数据,包括数字,字符串,列表,元组和字典等。 使用 return 语句时,我们可以选择是否返回值。如果函数没有 return 语句,函数将返回 None 值。No…

    2023年2月20日
    00
  • Python 读取文件(read)函数使用方法

    在 Python 中,read() 是文件对象的一个方法,用于读取文件中的内容。read() 方法可以读取文件的全部内容,也可以读取指定长度的内容。 read() 方法的语法如下: file.read([size]) 其中,file 是文件对象,size 是要读取的数据的字节数。如果省略 size 参数,read() 方法将会读取整个文件。 read() 方…

    2023年2月25日
    00
  • 为什么选择Python入门

    这个星球的编程语言有数百上千种,能够称为热门的也只有那十几种而已,比如C、C++、Java、C#、PHP等,这些编程语言也都十分火爆。 但对于新人来讲,尤其是现阶段对编程语言的优劣还没有什么概念的时候,选择哪门编程语言进行入门,是需要特别慎重的。作为站长本人,我为什么建议你选择Python作为入门语言,本章将带你一起探讨。 在此之前,我觉得有必要讲一下本教程…

    2022年10月25日
    00
  • Python 赋值运算符

    赋值运算符通常是指将右侧的值赋值给左侧的变量(或者常量)中。这类的赋值运算符用等号“=”表示。 同时,赋值时也可以进行某些算数运算后,再赋值给左侧的变量。比如加减乘除运算、函数调用、逻辑运算等。这类的赋值通常需要结合其他运算符,比如+=、-=、*=、/=等等。 “=”赋值运算符 “=”是 Python 中最常见、最基本的赋值运算符,它直接将右侧的值赋值给左侧…

    Python运算符 2022年12月19日
    00
合作推广
合作推广
分享本页
返回顶部