当前位置 主页 > 网站技术 > 代码类 > 最大化 缩小

    简单了解python元组tuple相关原理

    栏目:代码类 时间:2019-12-02 21:06

    这篇文章主要介绍了简单了解python元组tuple相关原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    元组tuple和列表List类似,元组有如下特点:

    1.由一个或者多个数据构成,数据的类型可以不相同也可以相同;

    2.元组中的数据需要写在()中括号内部,数据与数据之间用逗号隔开;

    3.元组是一个有序的集合,下标索引默认重 0 开始,和字符串类似;

    4.元组的数据不能被修改

    元组

    元组其实也称为只读列表,列表支持的函数元组同样也支持,唯一区别是元组tuple中的数据不能被修改,这就意味着不能删除元组tuple中的数据,也不能直接给元组tuple中的数据赋值。

    一.元组tuple定义

    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:何以解忧
    @Blog(个人博客地址): shuopython.com
    @WeChat Official Account(微信公众号):猿说python
    @Github:www.github.com
     
    @File:python_tuple.py
    @Time:2019/9/26 20:45
     
    @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
    """
    tuple1 = tuple() # 定义一个空元组,元组的数据不能修改,意味永远都是一个空元组
    print(tuple1)
    print(type(tuple1)) # 获取数据类型
     
    tuple2 = ("python","study") # 定义元组tuple2 ,该元组由两个字符串数据构成
    print(tuple2)
     
    tuple3= ("python","s",False,2.5) # 定义元组tuple3 ,该元组中的数据可以由不同类型的数据构成
    print(tuple3)

    输出结果:

    ()
    <class 'tuple'>
    ('python', 'study')
    ('python', 's', False, 2.5)

    二.元组tuple查询

    元组tuple的查询和列表list的操作类似,同样也可以直接通过下标查询元组中的数据,演示代码如下:

    tuple1= ("python","s",False,2.5,40,"tuple") # 元组中的数据可以由不同类型的数据构成
    print(type(tuple1)) # 通过内置函数type获取数据类型
    print(tuple1)
    print(tuple1[1]) # 获取元组中索引值为1 的数据
    print(tuple1[len(tuple1)-1]) # 获取元组中的最后一个元素,注意是len(tuple)-1,并非len(tuple)
    print(tuple1[1:4]) # 获取元组索引值1-4的数据
    print(tuple1[:5]) # 如果冒号之前没有设置参数,默认重0开始,表示获取元组索引值0-5的数据
    print(tuple1[3:]) # 如果冒号之后没有设置参数,默认到元组最后一个数据介绍,包括最后一个数据

    输出结果:

    <class 'tuple'>
    ('python', 's', False, 2.5, 40, 'tuple')
    s
    tuple
    ('s', False, 2.5)
    ('python', 's', False, 2.5, 40)
    (2.5, 40, 'tuple')

    三.元组tuple不支持删除/修改数据

    元组tuple中的数据只能读取,不能修改也不能删除,如果对元组tuple中的数据删除或者修改会报错,代码演示:

    # 测试修改元组数据
    tuple1= ("python","s",False,2.5,40,"tuple") # 元组中的数据可以由不同类型的数据构成
    tuple1[0] = False

    编译器会报错:TypeError: ‘tuple' object does not support item assignment(翻译:元组tuple不支持修改)

    # 测试删除元组数据
    tuple1= ("python","s",False,2.5,40,"tuple") # 元组中的数据可以由不同类型的数据构成
    del tuple1[0]

    编译器会报错:TypeError: ‘tuple' object doesn't support item deletion(翻译:元组tuple不支持删除)

    四.元组tuple与列表list的相互转换