• 学习python第四天——列表方法


    1、append()

    列表append()昨天说过用于在列表尾部添加元素

    2、clear()

    用于列表元素清除,释放内存

     

     

     3、copy()

    字面意思复制,拷贝分为浅拷贝和深拷贝,copy()方法属于列表深拷贝。

    深拷贝和浅拷贝抄自其他网页:

    浅拷贝

    • 1、对于 不可 变类型 Number String Tuple,浅复制仅仅是地址指向,不会开辟新空间。
    • 2、对于 可 变类型 List、Dictionary、Set,浅复制会开辟新的空间地址(仅仅是最顶层开辟了新的空间,里层的元素地址还是一样的),进行浅拷贝
    • 3、浅拷贝后,改变原始对象中为可变类型的元素的值,会同时影响拷贝对象的;改变原始对象中为不可变类型的元素的值,只有原始类型受影响。 (操作拷贝对象对原始对象的也是同理)

    深拷贝

    • 1、浅拷贝,除了顶层拷贝,还对子元素也进行了拷贝(本质上递归浅拷贝)
    • 2、经过深拷贝后,原始对象和拷贝对象所有的子元素地址都是独立的了
    • 3、可以用分片表达式进行深拷贝
    • 4、字典的copy方法可以拷贝一个字典

    深拷贝对6种基本类型的影响

    我们对3种可变类型3种不可变类型进行深拷贝。
    结果发现,和浅拷贝几乎一致。

    其实这也好理解,因为的深拷贝对比浅拷贝,强调的是 递归,强调的是资源素。
    对了顶层的操作,深浅拷贝无异。

     

     我简单理解啊就是浅拷贝是拷贝的数据的地址

    深拷贝是拷贝数据

    浅拷贝的数据与原属数据改变会相互影响,而深拷贝则不会相互影响,普通的变量赋值均属于浅拷贝

    4、count()

    用于访问列表内某个元素值存在的数量

     5、extend()

     extend()用于列表扩展,没有返回值。

     

     6、insert()

    昨天学习过insert()方法,用于在列表中插入元素

    7、index()

    用于查找列表中某个元素的索引,不存在时报错。参数为元素,查找开始位置,查找结束位置

    8、pop()、remove()

    昨天学习过,用于删除其中元素使用。

    9、reverse()

    reverse() 函数用于反向列表中元素。

     

     10、sort()

    sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

    • key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
    • reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。  
  • 相关阅读:
    【ASP.NET】website转webapplication
    【.net】ASP.Net设置和取消设置web项目起始页
    【.net】“Newtonsoft.Json”已拥有为“Microsoft.CSharp”定义的依赖项。
    snmp简单使用
    saltstack系列2之zabbix-agent自动化部署
    saltstack系列1之salt-api配置与使用
    python06 深浅拷贝原理
    python05
    level 1 -- unit 4 -- where 引导的疑问句
    level1 -- unit 3
  • 原文地址:https://www.cnblogs.com/xiaobai-yang/p/11616143.html
Copyright © 2020-2023  润新知