• python 中的列表、元组、字典、集合、字符串异同


    # 针对Python中的列表、元组、字典、集合、字符串,查阅资料,请以条目形式从各方面对比它们之间的异同。
    # 要求结合代码实例进行说明
    from twisted.python.compat import cmp


    def py_list():
    """
    列表:
    1.可以用list()函数或者方括号[]创建,元素之间用逗号分隔。
    2.列表的元素不需要具有相同的类型
    3.使用索引来访问元素
    4.可切片
    """
    # 声明/创建,类型
    list1 = list((1,2,3,'as4'))
    list2 = []

    # 索引访问
    print(list1[0])

    # 切片,前闭后开【 , )
    print(list1[1:3])

    # 追加元素
    list2.append(2)

    # 追加另一个列表
    list2.extend(list1)
    print(list2)

    # 参数在列表中的位置
    print(list2.index(1))

    # 像列表中插入数据
    list2.insert(3,3)#这是在3之前插入3的意思
    print(list2)

    # 删除数据,
    # 通过下标删除
    list2.pop(5)
    print(list2)
    # 通过值删除
    list2.remove(1)
    print(list2)

    # 将列表中的元素顺序颠倒
    list2.reverse()
    print(list2)

    # 排序,可从小到大,也可从大到小,需传递参数
    list2.sort()
    print(list2)
    pass


    def py_tuple():
    """
    1.可以用tuple()函数或者方括号()创建,元素之间用逗号分隔。 与列表类似
    2.元组的元素不需要具有相同的类型 ,与列表相同
    3.使用索引来访问元素 ,与列表相同
    4.可切片 ,与列表相同
    5.元素的值一旦创建就不可修改!!!!!(这是区别)
    """
    # 声明/创建元组
    tuple1 = tuple((1,2,3))
    tuple2 = tuple([1,2,3])
    tuple3 = ()
    tuple4 = (1,2,3,4,'ass')
    print(tuple1)
    print(tuple2)
    print(tuple4)
    # 与列表相同之处不在演示

    # 不可更改元素值
    print(tuple1[1]) #输出2
    # tuple1[1] = 3
    # #输出'tuple' object does not support item assignment,元组“tuple”对象不支持项分配
    # print(tuple1[1])

    # 比较两个元组,cmp(tuple1, tuple2)
    print(cmp(tuple1, tuple2)) #相同为0
    print(cmp(tuple1, tuple4)) #小于为-1
    print(cmp(tuple4, tuple1)) #大于为1

    # 输出元组最大最小值
    print(max(tuple1))
    print(min(tuple1))

    # 将列表转换为元组
    list_t = [1,2,3,4,'asas']
    tuple3 = tuple(list_t)
    print(tuple3)

    # 将元组转换为列表
    list_t = list(tuple3)
    print(list_t)
    pass


    def py_dictionary():
    """
    1.元素由键(key)和值(value)组成 ,与列表/元组类似
    2.可以用dict()函数或者方括号()创建,元素之间用逗号分隔,键与值之间用冒号隔开,与列表/元组类似
    3.键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组
    4.使用键(key)来访问元素,异
    """
    # 声明/创建字典
    dictionary1 = dict([('name','ms'),('age',22),('sex','男')])
    dictionary2 = dict((('name','ms'),('age',22),('sex','男')))
    print(dictionary1)
    print(dictionary2)
    dictionary3 = {}
    print(dictionary3.__class__) #输出<class 'dict'>字典类
    dictionary4 = {'name':'ms','age':22,'sex':'男'}
    print(dictionary4)

    # 使用关键字访问/修改
    print(dictionary1['name']) #输出name对应得值
    dictionary1['age'] = 21
    print(dictionary1['age'])
    pass


    def py_set():
    """
    1.可以用set()函数或者方括号{}创建,元素之间用逗号分隔,与列表/元组/字典类似
    2.与字典相比少了键
    3.不可索引,不可切片 异
    4.不可以有重复元素 异
    """
    # 声明/创建集合
    set1 = set('1234566')
    print(set1) #输出时重复会自动去掉

    pass


    def py_str():
    # 字符可以是上面的任何一种
    pass


    if __name__ == '__main__':
    # 列表
    # py_list()
    # 元组
    # py_tuple()
    # 字典
    py_dictionary()
    # 集合
    py_set()
    # 字符串
    py_str()
    pass

  • 相关阅读:
    java项目中ehcache缓存最简单用法
    最简单的freemarker用法实例
    java从包package中获取所有的Class
    java获取properties配置文件中某个属性最简单方法
    java去除字符串中的空格、回车、换行符、制表符
    java获取中文汉字的所有拼音
    运行时给java对象动态的属性赋值
    java中把文件拷贝到指定目录下最简单几种方法
    在Springmvc普通类@Autowired注入request为null解决方法
    java导入excel很完美的取值的方法
  • 原文地址:https://www.cnblogs.com/msdog/p/12782475.html
Copyright © 2020-2023  润新知