元组

作者: Vector_Wan | 来源:发表于2019-05-02 12:00 被阅读0次

    元组

    序列:列表、字符串、元组

    a = ('ddd', 111, 0.88)  # 元组中可以包含不同的数据类型
    a
    
    ('ddd', 111, 0.88)
    

    访问(通过索引访问)

    a[0]
    
    'ddd'
    

    修改

    元组一旦声明就不能修改和删除。

    a[0] = 1
    
    ---------------------------------------------------------------------------
    
    TypeError                                 Traceback (most recent call last)
    
    <ipython-input-6-c8548dbc0a7e> in <module>
    ----> 1 a[0] = 1
    
    
    TypeError: 'tuple' object does not support item assignment
    
    a = ('a', 'b', 'c', 'd', 'b', 'a')
    index1 = a.index('a')
    print(index1)
    c = a.count('b')
    print(c)
    
    0
    2
    
    # 注意!!!
    b = (211221) # (一个数字)不是元组***
        
    print(type(b))
    print(b*3)     # 乘法只是整数乘法
    
    d = (21,)  # (一个数字,)是元组
    print(type(d))
    print(d*3)  # 乘法 将元素复制相应的倍数
    
    <class 'int'>
    633663
    <class 'tuple'>
    (21, 21, 21)
    

    同时遍历两个列表

    zip() 用于将可迭代对象作为参数,将对象中的对应的元素组成一个元组,然后返回这些 对象 节约内存

    a = [1, 2, 3]
    b = [4, 5, 6]
    c = [4, 5, 6, 7, 8]
    zipped = zip(a, b)
    print(zipped)   # zip 函数返回的是一个对象
    print(list(zipped))  # 以列表的形式返回
    
    <zip object at 0x000001D676367F48>
    [(1, 4), (2, 5), (3, 6)]
    
    list(zip(a,c)) # 长度不一致与最短的对象相同
    
    [(1, 4), (2, 5), (3, 6)]
    
    heros = ['后羿', '安琪拉']
    skills = ['惩戒之箭', '烤串']
    for hero, skill in zip(heros, skills):
        print(hero, '----->', skill)
    
        
    for (hero, skill) in zip(heros, skills):
        print(hero, '----->', skill)
    
    后羿 -----> 惩戒之箭
    安琪拉 -----> 烤串
    后羿 -----> 惩戒之箭
    安琪拉 -----> 烤串
    

    相关文章

      网友评论

          本文标题:元组

          本文链接:https://www.haomeiwen.com/subject/npknnqtx.html