美文网首页
Python入门笔记(一):列表和元组

Python入门笔记(一):列表和元组

作者: SAIKAI | 来源:发表于2019-01-22 16:49 被阅读0次

    列表和元组区别

    元组和列表最大的区别就是,可以任意修改列表中的元素,可以任意插入或者删除一个元素,但对于元组是不行的。
    另外一个明显区别是,创建列表时用的是中括号,创建元组大部分时候用的小括号。如果是:

    >>>temp = (1)
    >>>type(temp)
    <class 'int'>    
    

    发现temp还是int类型,改为:

    >>>temp = 1, 2, 3
    >>>type(temp)
    <class 'tuple'>
    

    没有小括号,temp还是元组,所以逗号才是关键,想要建立一个只有一个元素的元组,必须加上逗号:

    >>>temp = (1,)
    >>>type(temp)
    <class 'tuple'>
    

    再举个例子:

    >>>8 * (8)
    64
    >>>8 * (8,)
    (8, 8, 8, 8, 8, 8, 8, 8)
    

    关于列表分片“拷贝”概念

    利用分片创建列表的拷贝与利用“赋值”创建新列表:

    >>>list1 = [1, 2, 3, 4, 5]
    >>>list2 = list1[:]
    >>>list2
    [1, 2, 3, 4, 5]
    >>>list3 = list1
    >>>list3 
    [1, 2, 3, 4, 5]
    

    看似list2和list3没有区别,用一下翻转排序:

    >>>list1.reverse()
    >>>list1
    [5, 4, 3, 2, 1]
    >>>list2
    [1, 2, 3, 4, 5]
    >>>list3
    [5, 4, 3, 2, 1]
    

    可以看到,使用分片方式得到的拷贝list2是真正的拷贝一个新列表,list3的方式只是为一个列表指定另一个名字的做法,向同一个列表增加了一个新标签而已。

    更新和删除元组

    元组不能直接修改其中的元素,但是可以通过间接的方法,分片拷贝至新元组,然后拼接,例如:

    >>>fruit = ('apple', 'banana', 'orange', 'lemon')
    >>>fruit = fruit[:2] + ('peach',) + fruit[2:]
    >>>fruit
    ('apple', 'banana', 'peach', 'orange', 'lemon')
    

    注意中间插入的也是元组('peach',),如果单单是一个字符串'peach'是不行的。同理,删除一个元素可以用:

    >>>fruit = fruit[:2] + fruit[3:]
    >>>fruit
    ('apple', 'banana', 'orange', 'lemon')
    

    可以用del语句删除整个元组

    相关文章

      网友评论

          本文标题:Python入门笔记(一):列表和元组

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