zoukankan      html  css  js  c++  java
  • python元组、列表的异同总结

    定义的异同:

    列表(list):[]

    list是一种有序的集合,能够随时加入和删除当中的元素。用 [] 表示。
    列表的三个特性:①创建之后也能够加减改动元素。 ②元素能够是数字、字符、变量等。也能够混杂。 ③列表能够嵌套。


    比如:

    >>>f=3
    >>>list_example = [1, 'dog', f, ['monkey', 'duck']]
    >>>list_example
    [1, 'dog', 3, ['monkey', 'duck']]

    元组(tuple): ()

    tuple也是有序的集合,它和list不同的是它仅仅能在初始化的时候赋值,之后就不能再进行加入删除元素了。用 () 表示。
    元组的三个特性:①创建之后不能加减改动元素; ②元素也能够是数字、字符、变量或者混杂; ③元组也能够嵌套。
    比如:

    >>>f=3
    >>>tuple_example = (1, 'dog', f, ('monkey', 'duck'))
    >>>tuple_example
    (1, 'dog', 3, ('monkey', 'duck'))

    综上能够看出,tuple和list的不同主要在于: tuple在初始化之后不能再改动,可是list能够


    各种同样:

    两者除了在初始化后是否能再变化这个问题上不同样外。其它方面差点儿都是同样的。


    初始化:
    list_example = [1, 2, [3, 4], 5, 6]
    tuple_example = (7, 8, (9, 10), 11, 12)

    使用方法上的同样点:

    1、假设仅仅有一个元素,要在后面加个’,’,否则仅仅相当于定义了一个变量:

    >>>list_example = [1]
    1
    >>>list_example = [1,]
    [1]
    >>>tuple_example = (1,)
    (1,)

    2、利用索引输出元素(注意索引从0開始):

    >>>list_example[0]
    1
    >>>tuple_example[2][0]
    9

    3、索引为负数,表示从尾往前搜索(-1表示最后一个元素):

    >>>list_example[-1]
    6
    >>>tuple_example[-3][-1]
    10

    4、tuple和list能够相互嵌套:

    >>>list_example = [1,(2,3)]
    [1,(2,3)]
    >>>tuple_example = (4,[5,6])
    >(4,[5,6])

    方法上的同样点:

    1、count(elem):返回元素中elem的个数

    >>>tuple_example = (7, 8, (7, 10), 7, 12)
    >>>tuple_example.count(7)
    2

    2、index(elem):返回元素elem的索引

    >>>list_example = [7, 8, (7, 10), 8, 12]
    >>>list_example.index(8)
    1


    各种不同:

    由于tuple不能改动删除。而已list能够。所以有些方法是list才有的。
    初始化:
    list_example = [1, 2, [3, 4], 5, 6]

    1、append(object):在末尾加入元素:

    >>>list_example.append(100)
    [1, 2, [3, 4], 5, 6, 100]
    >>>list_example.append([100, 200])
    [1, 2, [3, 4], 5, 6, 100, [100, 200]]

    2、extend(object):在末尾加入元素,但object必须是列表。object的元素将会加入到列表的末尾:

    >>>list_example.append([100, 200])
    [1, 2, [3, 4], 5, 6, 100, 200]

    3、insert(index,object):将元素object加入到索引为index的位置:

    >>>list_example.insert(1, 'abc')
    [1, 'abc', 2, [3, 4], 5, 6]

    4、pop(index):将索引为index的元素弹出列表:

    >>>list_example.pop(1)
    2
    >>>list_example
    [1, [3, 4], 5, 6]

    5、remove(value):删除元素value(仅仅删除第一个出现的)

    >>>list_example = [1, 2, 5, [3, 4], 5, 6]
    >>>list_example.remove(5)
    >>>list_example
    [1, 2, [3, 4], 5, 6]

    6、sort(cmp=None,key=None,reverse=False):对元素排序。


    默认是从小到大,不同类型的元素按数字—>列表—>字符—>元组先后排序。

    >>>list_example = [1, 'cd', ('b', 'f'), 8, 'ab', [4, 3], (1, 2), [2,9], 5, 6]
    >>>list_example.sort(cmp=None, key=None, reverse=False)
    >>>list_example
    [1, 5, 6, 8, [2, 9], [4, 3], 'ab', 'cd', (1, 2), ('b', 'f')]



    总之。tuple和list功能上是非常相近的,仅仅是tuple在初始化后就不能更改了。这也说明tuple具有更高的安全性。防止数据被误改动。对于无需改动的数据,相似于“仅仅读”性质的数据,最好选用tuple。


    转载请注明出处,谢谢!(原文链接:http://blog.csdn.net/bone_ace/article/details/46633029
  • 相关阅读:
    基于注解的ssh框架之spring配置文件
    hdu 4770 Lights Against Dudely
    便捷开发工具(未完)
    solr 简单搭建 数据库数据同步(待续)
    Nginx对某个文件夹或整个站点进行登录认证的方法
    swift 单例模式
    POJ 2823 Sliding Window(单调队列)
    Android 网络下载图片
    一个表空间offline后alert日志报ORA-01135 和ORA-01110的问题
    [c#]分析器错误消息: 发现不明白的匹配。
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/7268758.html
Copyright © 2011-2022 走看看