• python的tuple()元组数据类型的使用方法以及案例


     一、元组的概念介绍

    1、元组是列表的二次加工

    列表可以被修改

    列表的类型 

    list

    li = [1,2,3,4,5,6]

    2、元组的元素不可被修改,不能被增加或者删除,(只是针对元组的一级元素是不可以修改的,元组里面的二级列表元素是可以被修改的,就是元组里面嵌套着列表)可以被for循环,所以元组也是一个可迭代对象,元组也是有序的

    元组的类型

    tuple

    tu = (1,2,3,4,5,6)

    3、元组可以包含 数字、字符串,列表,元组

       在写元组的时候在末尾一定要加一个,   逗号,不然区分不出来是参数还是元组

       比如下面这个是个参数跟元组是一样的都是()

       我们自己在写代码的时候在元组末尾加个逗号,就能区分出来了

    sort(self, key=None, reverse=False)

    tu = (11,"22","gouguoqi",(33,99),[66,"77"],True,)
    print (tu)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    (11, '22', 'gouguoqi', (33, 99), [66, '77'], True)

    4、通过索引获取元组内的元素

    tu = (11, "22", "gouguoqi", (33, 99), [66, "77"], True,)
    v = tu[1]
    print(v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    22 

    如何取到元组里面的嵌套的列表里面的的元素的元素

    tu = ("11","22",["33",("ae",66,"99",),90])
    v = tu[2][1][2]
    print  (v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    99

    5、通过切片获取元组内一个范围内的元素

    tu = (11, "22", "gouguoqi", (33, 99), [66, "77"], True,)
    v = tu[1:5]             大于等于1小于5
    print(v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    ('22', 'gouguoqi', (33, 99), [66, '77'])

    6、可以被for循环,所以元组也是一个可迭代对象(字符串、列表、元组都是)

    tu = (11, "22", "gouguoqi", (33, 99), [66, "77"], True,)
    for n in tu:
        print (n)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    11
    
    22
    
    gouguoqi
    
    (33, 99)
    
    [66, '77']
    
    True

    二、字符串、列表、元组 之间的相互转换

    我们之前把数字转换成字符串是这样写 S = str(a)  a是数字,S是转换成的结果

    我们之前把字符串换成数字是这样写   S = int(a)  a是字符串,S是转换成的结果

    把字符串换成列表就是               S = list(a)  a是字符串,S是转换成的结果

    把列表转换成字符串                 S = str(a)   a是列表,S是转换成的结果

      (1)将字符串转换为元组

    S = "gouguoqi"
    v = tuple(S)
    print (v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    ('g', 'o', 'u', 'g', 'u', 'o', 'q', 'i')

     (2)将列表转换为元组

    li = ["beiye",22,33]
    v = tuple(li)
    print (v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    ('beiye', 22, 33)

    (3)将元组转换为列表

    tu = ("miaoye",66,77)
    v = list(tu)
    print (v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    ['miaoye', 66, 77]

    (4)将元组转换为字符串(跟列表转换为字符串一样)

    第一种方法,自己写for循环,一个一个的循环,因为元素中既有数字,又有字母,                所以得定义一个空,然后循环的时候转换成str类型,才能进行相加,一个一个的循环,最    后把a打印出来

    tu = ("miaoye",66,77)
    v = str(tu)
    print (type(v),v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    <class 'str'> ('miaoye', 66, 77)

    虽然是一个字符串的类型了,但是结果不是我们想要的,所以我们得自己写for循环了

     
    
    tu = ("miaoye", 66, 77)
    a = ""
    for n in tu:
        b = str(n)
        a += b
    # a = a + b
    print(a)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    miaoye6677
     

    第二种方法,当元组里面都是字符串的时候,我们就可以用join的方法进行拼接了,有数字就不能用join了,就得用上面的自己写for循环了

    tu = ("miaoye","gou")
    v = "_".join(tu)
    print (v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    miaoye_gou

    7.修改元组里面的二级列表中的元素  *****重要

    tu = ("11", "22", ["33", ("ae", 66, "99",), 90])
    tu[2][0] = "333"
    print(tu)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    ('11', '22', ['333', ('ae', 66, '99'), 90])

    8.元组这里就提供了2个方法

    (1)count(self, value)    计数
    计算指定的元素在元组里面出现了几次
    T.count(value) -> integer -- return number of occurrences of value
    
    T = ("11","22","33","11","woai")
    v = T.count("11")
    print (v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    2
    (2)index(self, value, start=None, stop=None)

    找到第一个指定的元素的索引之后就不再继续往下找了,也可以指定范围

    T.index(value, [start, [stop]]) -> integer -- return first index of value.
    Raises ValueError if the value is not present.
    
     
    T = ("11","22","33","11","22","woai")
    v = T.index("22")
    print (v)
    
    C:python35python3.exe D:/pyproject/day12列表/tuple.py
    
    1
     

    10、元组的in操作,判断元素是否包含在元组中

    T = ("11","22",33)
    v = 33 in T
    print (v)
    
    C:python35python3.exe D:/pyproject/day12列表/dict-way.py
    
    True
  • 相关阅读:
    毕业生的商业软件开发之路 C#语言简介
    [毕业生的商业软件开发之路]第一次使用VS.NET集成开发环境
    一种应用程序命令执行架构设计
    DCWriter 电子病历文档编辑器的 电子病历功能规范对照表
    [毕业生的商业软件开发之路]积累与创新
    WEB开发人员的微软技术战略
    PureMVC(AS3)剖析:吐槽
    走在网页游戏开发的路上(九)
    [服务器开发]可伸缩系统的设计模式(译)
    回合制页游
  • 原文地址:https://www.cnblogs.com/gouguoqilinux/p/9119862.html
Copyright © 2020-2023  润新知