s21day07 python笔记

一、昨日内容回顾及补充

  1. 回顾
  2. 补充
    • 将前面所提到的功能,统一改称为方法

二、深浅拷贝

  1. 基本格式

    v1 = [1,2,3]
    import copy
    v2 = copy.copy(v1)             #浅拷贝
    v3 = copy.deepcopy(v1)         #深拷贝
  2. 整型int/布尔bool/字符串str(不可变类型)

    • 深拷贝和浅拷贝的结果都是一样的
    • 无法重新开辟一个内存地址,就使用同一个地址
  3. 列表list/字典dict/集合set(不可变类型)

    • 对于其中的元素都是不可变类型时,深拷贝和浅拷贝的结果都是一样的,都是只拷贝第一层
    • 对于其中元素存在可变类型时,浅拷贝只拷贝第一层,深拷贝要拷贝所有的可变类型
  4. 特殊类型:元组tuple

    • 如果元组中不含有可变类型,同理字符串的深浅拷贝
    • 如果元组中含有可变类型,同理列表的深浅拷贝
  5. 总结

    • 浅拷贝:只拷贝第一层

      深拷贝:拷贝嵌套层次中的所有可变类型

    • 深拷贝之所以不拷贝不可变类型,是由于python小数据池的缘故

    • 注意:

      • 拷贝只针对可变类型:再创造一份
      • 不可变类型:不会拷贝(不再创造一份出来,都是用同一个地址)

三、文件操作

  1. 打开

    • 打开方式:

      file = open('文件路径',mode = 'r',encoding = 'utf-8')
    • mode

      • 读取:r,只能读
      • 写入:w,只能写,写之前清空
      • 写入:a,只能追加
      • 可读可写:r+
        • 读:默认从0的光标开始读,也可以通过 seek 调整光标的为位置
        • 写:从光标所在的位置开始写,也可以通过 seek 调整光标的位置
      • 可读可写:w+
        • 读:默认光标永远在写入的最后或0,也可以通过 seek 调整光标的位置
        • 写:先清空
      • 可读可写:a+
        • 读:默认光标在最后,也可以通过 seek 调整光标的位置。然后再去读取
        • 写:永远写到最后
    • encoding

      • 用什么编码保存,就用什么编码打开,否则会乱码
    • .seek(3)

      • 移动光标的位置,数字代表移动到底几个字节
  2. 操作

      • read()
      • read(2) # 字符
      • readlines()
      file = open('文件路径',mode = 'r',encoding = 'utf-8')
      
      #1.读取文件的所有内容到内存
      date = file.read()
      
      #2.从当前光标所在的位置向后读取2个字符
      date = file.read(2)     #数字代表几个字符
      
      #3.读取文件的所有内容,并按照每一行进行分割到啊列表中
      date_list = file.readlines()
      
      #4.如果以后读取一个特别大的文件,可以一行一行读取
      for line in file:
          line = line.strip()     #去除换行符
          print(line)             #一行一行读取
    • 写:write

      file = open('文件路径',mode = 'w',encoding = 'utf-8')
      file.write('你好')          #清空后写入
      file.close()                #写完一定要关闭文件(关闭相当于保存)
  3. 关闭

    • 关闭方式

      file = open('文件路径',mode = 'r',encoding = 'utf-8')
      file.close()               #关闭文件

s21day07 python笔记的更多相关文章

  1. Python笔记之不可不练

    如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...

  2. boost.python笔记

    boost.python笔记 标签: boost.python,python, C++ 简介 Boost.python是什么? 它是boost库的一部分,随boost一起安装,用来实现C++和Pyth ...

  3. 20.Python笔记之SqlAlchemy使用

    Date:2016-03-27 Title:20.Python笔记之SqlAlchemy使用 Tags:python Category:Python 作者:刘耀 博客:www.liuyao.me 一. ...

  4. Python笔记——类定义

    Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...

  5. 13.python笔记之pyyaml模块

    Date:2016-03-25 Title:13.Python笔记之Pyymal模块使用 Tags:Python Category:Python 博客地址:www.liuyao.me 作者:刘耀 YA ...

  6. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  7. python笔记 - day8

    python笔记 - day8 参考: http://www.cnblogs.com/wupeiqi/p/4766801.html http://www.cnblogs.com/wupeiqi/art ...

  8. python笔记 - day7-1 之面向对象编程

    python笔记 - day7-1 之面向对象编程 什么时候用面向对象: 多个函数的参数相同: 当某一些函数具有相同参数时,可以使用面向对象的方式,将参数值一次性的封装到对象,以后去对象中取值即可: ...

  9. python笔记 - day7

    python笔记 - day7 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 面向对象,初级篇: http://www.cnblog ...

随机推荐

  1. Centos 安装pureftpd工具

    之前由于vsftp上传文件会导致权限变更,因此一直不太想用ftp工具,一直sftp了,这样就导致权限过大,用户对家目录下所有文件都有权限,很容易误删其他文件.最近听同事说pure-ftp工具不错,试了 ...

  2. flask --- 04 . 偏函数, 线程安全,栈堆,

    一.偏函数(partial) ①第一种 结果为: ② 第二种 二.线程安全 将空间转换成时间 问题: 1秒钟打印所有结果 threading.current_thread().ident :线程ID ...

  3. JS(JavaScript)的初了解3(更新中···)

    1. {} 在JS中我们把它叫代码块.如果代码块里的内容没有执行完,语句不会向下执行. 代码块是一个独立的整体.如果JS中某一条语句出错,那么就会在此终止不会向下执行. 2. 循环语句 循环,就是对一 ...

  4. HAProxy + Keepalived + Flume 构建高性能高可用分布式日志系统

    一.HAProxy简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代 理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点, ...

  5. 深度学习标注工具 LabelMe 的使用教程(Windows 版本)

    深度学习标注工具 LabelMe 的使用教程(Windows 版本) 2018-11-21 20:12:53 精灵标注助手:http://www.jinglingbiaozhu.com/ LabelM ...

  6. SAP PI

    PI功能很是强大,且系统很稳定. 1.什么是PI PI = Process IntegrationSAP PI是一项集成的技术和平台    1.为sap和non-sap之间提供集成    2.为A2A ...

  7. 【科普】GSM伪基站 劫持 诈骗?用4G网就安全?想强制用4G?最详细的科普教程在此!

    最近在一些主流论坛(豆瓣.贴吧.虎扑.天涯)都出现了讨论GSM诈骗的新闻,很多受害者受骗. 1.什么是GSM劫持? 平时你的手机是连接到了运营商的基站,才能收到电话短信.伪基站就是有人也买了运营商的基 ...

  8. 英语发音规则---E字母常见的发音组合有哪些

    英语发音规则---E字母常见的发音组合有哪些 一.总结 一句话总结:很好记的e和5个元音字母的组合,加一个非e开头的ie e:开音节 /i:/  eve /i:v/ n. 夏娃----闭音节 /e/ ...

  9. (15)线程---Condition条件

      功能:也是通过阻塞控制线程数量.类似信号量\进程池\线程池的作用 语法:wait from threading import Condition con= Condition() conn.acq ...

  10. (14)线程- Event事件和守护线程Daemon

    <一>Event事件 线程Event基本和进程的Event语法是一样的 # wait() 动态给程序加阻塞 # set() 将内部属性改成True # clear() 将内部属性改成Fal ...