zoukankan      html  css  js  c++  java
  • Day2 之 元组tuple

    tuple 元组
        也是有序列表 ,与list非常相似,但是tuple一旦初始化就不能修改。
            name = ('a','b',1,2,3,True)
           
        tuple不支持 append、insert ,因为tuple初始化后不能修改。
    由于不可修改,所以代码更安全,如果可能的话,能用tuple代替list ,尽可能使用tuple。
    tuple可以定义为空, 使用 a = () 来定义。

    tuple的坑
        如果tuple中只有1个元素,那么要使用 a = ('a',)     b=(1,) 的方式来定义。
        如果不加逗号的话, a = (1)  == a = 1 ,被视为数学中的小括号,而不是元组。
       
    用tuple包含list
        tuple虽然初始化后不能修改,但是当tuple中的元素为list时, list依然是可以修改的。
            >>> a = ('a','b',True,1,['qq','yy'],'End')
            >>> a
            ('a', 'b', True, 1, ['qq', 'yy'], 'End')
            >>> a[4]
            ['qq', 'yy']
            >>> a[4][1] = 'aa'
            >>> a
            ('a', 'b', True, 1, ['qq', 'aa'], 'End')
        虽然tuple不可变,tuple第四个元素指向的是list,但是list的元素指向变了。
        如果要保证tuple中一个内容都不变,就要保证元组中的任何一个元素本身就不能变。
       
    练习:
    L = [
        ['Apple', 'Google', 'Microsoft'],
        ['Java', 'Python', 'Ruby', 'PHP'],
        ['Adam', 'Bart', 'Lisa']
    ]
    # 打印Apple:
    print(?)
    # 打印Python:
    print(?)
    # 打印Lisa:
    print(?)
  • 相关阅读:
    Unique Binary Search Trees——LeetCode
    Binary Tree Inorder Traversal ——LeetCode
    Maximum Product Subarray——LeetCode
    Remove Linked List Elements——LeetCode
    Maximum Subarray——LeetCode
    Validate Binary Search Tree——LeetCode
    Swap Nodes in Pairs——LeetCode
    Find Minimum in Rotated Sorted Array——LeetCode
    Linked List Cycle——LeetCode
    VR AR MR
  • 原文地址:https://www.cnblogs.com/konggg/p/8962027.html
Copyright © 2011-2022 走看看