zoukankan      html  css  js  c++  java
  • python列表和元组的操作函数

    回顾:
    len函数在列表(元组)中的使用:
    eg: names = ['zhangsan', 'lisi', 'wanger', 'mazi']
        length = len(names)
        print(length)
    返回结果应为: 4
    元组的使用规则也是一样的;
    len函数可以计算出,除数字类型外的所有数据类型的长度;
    
    列表(元组)间的累加与累乘:
    eg: names = ['zhangsan', 'lisi']
        new_names = names + names 
        print(new_names)
    返回结果应为: ['zhangsan', 'lisi', 'zhangsan', 'lisi']
    
        names = ['zhangsan', 'lisi']
        new_names = names * 2
        print(new_names)
    返回结果应为: ['zhangsan', 'lisi', 'zhangsan', 'lisi']
    
    innot in 在列表(元组)中的用法:
    in 判断某个元素是否存在于该数据结构中;
    not in 判断某个元素是否不存在与该数据结构中;
    它们返回的都是bool值;
    eg: names = ['zhangsan', 'lisi']
        booltype = 'lisi' in names
        print(booltype)
    返回结果应为: True
        names = ['zhangsan', 'lisi']
        booltype = bool('lisi' not in names)
        print(booltype)
    返回结果应为: False
    列表的添加函数之append:
    功能:将一个元素添加到当前列表中;
    用法:
    list.append(new_item)
    参数:
    new_item:要添加进列表的新元素;
    eg: names = ['zhangsan']
        names.append('lisi')
        print(names)
    返回结果应为:['zhangsan', 'lisi']
    注意:
    1、被添加的元素只会被添加到末尾;
    2、append是在原有的列表基础进行添加,不需要额外添加新的变量;
    3、每次只能加入一个元素;
    列表的添加函数之insert:
    功能:将一个元素添加到当前列表的指定位置中;
    用法:
    list.insert(index, new_item)
    参数:
    index:新的元素要放置的位数;
    new_item:要添加的新元素;
    eg: names = ['zhangsan', 'wanger']
        names.insert(1, 'lisi')
        print(names)
    返回结果应为:['zhangsan', 'lisi', 'wanger']
    ps:字符串、元组、列表中元素的位置是从0开始计算的;
    
    insert 与 append 的区别:
    1、append只能把元素添加到结尾,而insert可以选择一个指定位置添加;
    2、如果insert传入的位置不存在,则会把新元素添加到列表末尾;
    列表(元组)的count函数:
    功能:返回当前列表(元组)中的某个元素的个数;
    用法:
    inttype = list.count(item)
    参数:
    item:你想查询个数的元素;
    eg: names = ['zhangsan','lisi', 'wanger', 'lisi']
        count = names.count('lisi')
        print(count)
    返回结果应为:2
    注意:
    1、如果查询的元素不存在,则返回0;
    2、只会检查完整的元素(不支持模糊查询);
    列表的remove函数:
    功能:删除列表中的某个元素;
    用法:
    list.remove(item)
    参数:
    item:准备删除的列表元素;
    eg: names = ['zhangsan','lisi']
        names.remove('lisi')
        print(names)
    返回结果应为:['zhangsan']
    注意:
    1、如果被删除的元素不存在,将会报错;
    2、如果被删除的元素在列表中存在多个,则只会删除第一个元素;
    第八个内置函数del:
    功能:把变量完全删除;
    eg: names = ['zhangsan','lisi']
        del names
        print(names)
    返回结果将会报错:NameError: name 'names' is not defined
    
    列表的reverse函数:
    功能:把当前列表顺序反转;
    用法:
    list.reverse()
    eg: names = ['zhangsan','lisi', 'wanger', 'mazi']
        names.reverse()
        print(names)
    返回结果应为: ['mazi', 'wanger', 'lisi', 'zhangsan']
    列表的sort函数:
    功能:对当前列表按照一定规律进行排序;
    用法:
    list.sort(key=None, reverse=False)
    参数:
    key:参数比较(默认不传);
    reverse:排序规则,True为降序,False为升序(默认是升序);
    eg: names = ['zhangsan','lisi', 'wanger', 'mazi']
        names.sort()
        print(names)
    返回结果应为:['lisi', 'mazi', 'wanger', 'zhangsan']
    注意:列表中元素类型必须相同,否则使用sort会报错;
    列表的clear函数:
    功能:清空当前列表中的数据;
    用法:
    list.clear()
    eg: names = ['zhangsan','lisi', 'wanger', 'mazi']
        names.clear()
        print(names)
    返回结果应为:[]
    列表的copy函数:
    功能:复制当前列表;
    用法:
    list.copy()
    eg: names = ['zhangsan','lisi', 'wanger', 'mazi']
        names_new = names.copy()
        print(names_new)
    返回结果应为:['zhangsan', 'lisi', 'wanger', 'mazi']
    copy与二次赋值的区别:
    什么是二次赋值:
     a = [1, 2, 3]
     b = a
    向上面的方法就叫二次赋值;
    区别:二次赋值的变量与原始变量享有共同的内存空间,故而同享数据变更,而用copy函数创建的新列表,与原始列表不是一个内存空间,所以也不同享数据变更;
    注意:copy属于浅拷贝;
    浅拷贝:只能对数据结构的第一层进行拷贝,如果数据结构有更深的层则无法进行拷贝,深层数据与原数据共享,变化也会共享;
    简单的讲,我们有一个列表a,列表a里的元素也是列表,当我们使用copy拷贝出新列表b后,无论是a还是b内部的列表元素发生改变后,另一个也会跟着改变;
    eg:a = [[1, 2, 3], [4, 5, 6]]
        b = a.copy()
        b[0].append(2021)
        print(a)
        print(b)
    输出结果应为:   [[1, 2, 3, 2021], [4, 5, 6]]
                    [[1, 2, 3, 2021], [4, 5, 6]]
    深拷贝:不仅对第一层的数据进行了拷贝,对深层数据也进行了拷贝,原始变量和新变量不在共用任何内存,固然也不会共享任何数据;
    用法:
    list_new = copy.deepcopy(list)
    eg: a = [[1, 2, 3], [4, 5, 6]]
        b = copy.deepcopy(a)
        b[0].append(2021)
        print(a)
        print(b)
    返回结果应为:[[1, 2, 3], [4, 5, 6]]
                [[1, 2, 3, 2021], [4, 5, 6]]
    
    列表的extend函数:
    功能:将其他列表/元组中的元素导入到当前列表中;
    用法:
    list.extend(iterable)
    eg: names = ['zhangsan', 'lisi']
        new_names = ('wanger', 'mazi')
        names.extend(new_names)
        print(names)
    返回结果应为:['zhangsan', 'lisi', 'wanger', 'mazi']
  • 相关阅读:
    批量改主机名报错:Address 192.168.43.117 maps to bogon, but this does not map back to the address
    ssh远程登录连接慢的解决方法
    expect脚本远程登录、远程执行命令和脚本传参简单用法
    将集群WEB节点静态数据迁移到共享存储器(LNMP环境)
    LAMP环境搭建之编译安装指南(php-5.3.27.tar.gz)
    手把手教你设置MongoDB密码
    手把手教你在Linux系统下安装MongoDB
    手把手教你在Linux系统下安装MySQL
    在Linux下使用rm -rf /*后会怎样?
    Failed to configure a DataSource 'url' attribute问题解决
  • 原文地址:https://www.cnblogs.com/BrotherCat/p/14963867.html
Copyright © 2011-2022 走看看