内容大纲

  一:文件的基本操作,

    >常见问题

    >encoding

    >绝对路径和相对路径的

  二:文件的读写追加相关操作

    >读(r, r+ ,rb,r+b)

    >写(w,w+,wb,w+b)

    >追加(a,a+,ab,a+b)

  三:文件相关的操作方法

  四:文件的常规修改方式

一:文件的基本操作,

    >常见问题

      >>1 文件路径错误,比如 \把需要的内容转意了 比如\a \n'

       解决方法,在字符串前面增加r  

# with open('f:\a.txt','r',encoding='utf-8') as f:
# f.read()
# OSError: [Errno 22] Invalid argument: 'f:\x07.txt'
# with open(r'f:\a.txt','r',encoding='utf-8') as f:
# f.read()

    >encoding

      encoding的作用只是强调,

    >绝对路径和相对路径的

      >>1 绝对路径:指的是具体到哪个文件夹的文件

      >>2 相对路径:指的是当前操作的文件夹的目录地址

  二:文件的读写追加相关操作

    >读(r, r+ ,rb,r+b)

      >r  读, read()  返回str    # read(  字符) 1 代表一个字符.2 带表两个字符

         readline()  返回str

         readlines()  返回list

         for 变量 i 句柄 :   返回str    如果文件很大需要使用for 循环,这样不会造成内容消耗

 # 4  读  (r ,rb ,r+ r+b)
# with open('1.txt','r',encoding='utf-8') as f:
# contect =f.read()
# print(contect)
# with open('1.txt','r',encoding='utf-8') as f:
# contect =f.read()
# print(contect)
# with open('f:/msg.jpg','rb') as f:
# contect =f.read()
# print(contect)
#读写, 需要先读在写,如果先写在读的情况下需要,调整光标的位置
# 利用seek() 调整光标位置. (0)代表开头 (0,2)代表结尾
# with open('1.txt','r+',encoding='utf-8') as f :
# f.write('汉子')
#
# l =f.read()
# print(l)

    >写(w,w+,wb,w+b)

    write()

      

    >追加(a,a+,ab,a+b)

    如果有源文件,那么就在文件后面追加内容, 如果没有内容那么就新创建文件

#5 追加模式 a # 本身的内容不删除,只是在最后增加
#如果没有这个文件夹,那么则创建文件,有的话则追加内容
# with open('1.txt','a',encoding='utf-8') as f:
# f.write('这是追加的内容')

  三:文件相关的操作方法

# readable  判断这个文件是否可以读
# writable 判断这个文件是不是可写
# flush 强制保存, 相当于Ctrl+s
# tell 返回光标位置
# seek 调整光标位置 有两个参数 ,第一参数是光标位置,第二个1 中间 (0,2)是末尾
# truncate 截断内容. 打印截断之前的内容, 按照字节截断 只能在写的模式下进行 进行,'w' 下没有意义

  四:文件的常规修改方式

 

# 5把新文件名字修改成旧文件
import os
with open('1.txt','r',encoding='utf-8') as f1 ,open('1bak.txt','a',encoding='utf-8') as f2:
old_contect =f1.read()
new_contect =old_contect.replace('a','好吃')
f2.write(new_contect)
os.remove('1.txt')
os.rename('1bak.txt','1.txt') 用for 循环可以 可降低内存消耗. with open('1.txt','r',encoding='utf-8') as f1 ,open('1bak.txt','a',encoding='utf-8') as f2:
# old_contect =f1.read()
# new_contect =old_contect.replace('a','好吃')
# f2.write(new_contect)
# for line in f1:
# new_line = line.replace('好吃','呵呵')
# f2.write(new_line)
# os.remove('1.txt')
# os.rename('1bak.txt','1.txt')

 

 

总结day7 ---- 文件操作,读,写,追加,以及相关方法的更多相关文章

  1. day9 python学习 文件的操作 读 写 seek

    文件的操作 1   文件的打开操作: 文件句柄 = open('文件路径', '模式') f=open('wangyakun','a+',encoding='utf-8') #文件名, 如果是绝对路径 ...

  2. C# 文件操作 全收录 追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件....

    本文收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加.拷贝.删除.移动文件.创建目录.递归删除文件夹及文件.指定文件夹下 面的所有内容copy到目标文件夹下面.指定文件夹下面的所有内 ...

  3. asp.net 文件操作小例子(创建文件夹,读,写,删)

      静态生成要在虚拟目录下创建文件夹 来保存生成的页面 那么就要对文件进行操作 一.创建文件夹 using System.IO; string name = "aa"; strin ...

  4. python基础知识-day7(文件操作)

    1.文件IO操作: 1)操作文件使用的函数是open() 2)操作文件的模式: a.r:读取文件 b.w:往文件里边写内容(先删除文件里边已有的内容) c.a:是追加(在文件基础上写入新的内容) d. ...

  5. Python 3 利用 subprocess 实现管道( pipe )交互操作读/写通信

    这里我们用Windows下的shell来举例: from subprocess import * #因为是举例,就全部导入了 为了方便你理解,我们用一个很简单的一段代码来说明: 可以看见我们利用Pop ...

  6. C语言之文件操作06——写数据到文本文件遇0停止

    //文件 /* =============================================================== 题目:输入10个篮球运动员的身高数据(cm)保存至D盘文 ...

  7. day9文件操作---从即日起时景丽阳老师给我们讲课

    今天的主要内容是文件的操作,读,写,只读只写,或者可读同时可写,追加写,以二进制的方式读,以二进制的方式写,以二进制的方式追加. 思维导图: 给你一个文件路径,从中找出所有的文件,方法如下: # 方法 ...

  8. Java学习之==>IO文件操作体系

    一.概述 在整个 Java.io 中最重要的就是5个类和一个接口.5个类指的是 File.InputStream.OutputStream.Reader.Writer,一个接口指的是Serializa ...

  9. 前端学PHP之文件操作

    × 目录 [1]文件类型 [2]文件属性 [3]目录路径[4]目录遍历[5]目录统计[6]目录增删[7]目录复制[8]文件操作[9]文件内容 前面的话 在程序运行时,程序本身和数据一般都存在内存中,当 ...

随机推荐

  1. PLSQL优化基础和性能优化 (学习总结)

    PLSQL优化基础和性能优化 (学习总结) 网上有一篇关于PLSQL优化的文章,不错,个人根据自己的经验再稍加整理和归纳,总结PLSQL优化和性能调优 适合有一定PLSQL基础,需要进一步提高的学友看 ...

  2. Git忽略规则及.gitignore规则不生效的解决办法(转)

    在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注 ...

  3. What's App has the Qt?

    收集了我看到的使用Qt开发的应用程序或者含有Qt库的应用程序 CNTV CNTV, 一个中央电视台的视频直播软件, 从下面卸载后的残余目录树,可以看到,存在部分库使用的就是Qt的.下面的目录树,已经删 ...

  4. 同台机器2个网卡配置同段IP

    看个例子:1.on serverifconfig eth4 192.168.1.10/24 upifconfig eth5 192.168.1.11/24 up2.on clientifconfig ...

  5. 第六章 Windows应用程序对键盘与鼠标的响应

  6. 第七章 资源在Windows编程中的应用 P157 7-8

    资源在基于SDK的程序设计中的应用实验 一.实验目的 1.掌握各种资源的应用及资源应用的程序设计方法.   二.实验内容及步骤 实验任务 1.熟悉菜单资源的创建过程: 2.熟悉位图资源的创建: 3.熟 ...

  7. C++11中std::unordered_map的使用

    unordered map is an associative container that contains key-value pairs with unique keys. Search, in ...

  8. 如何使用vsphere client 克隆虚拟机

    vSphere 是VMware公司推出一套服务器虚拟化解决方案. 工具/原料 vSphere 测试系统 方法/步骤 1.进入vSphere client,关闭需要克隆的虚拟机win7 2.选中ESXi ...

  9. sublime相关资源

    Sublime Text 全程指南 http://zh.lucida.me/blog/sublime-text-complete-guide/ Sublime官网Package安装 https://p ...

  10. ssh 无密码登录要使用公钥与私钥

    ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155),B(192.168.1.181).现想 ...