文件操作:

1.以什么编码方式输出,就以什么编码方式打开

 f = open('d:\文件操作.txt',mode='r',encoding='GB2312') G = f.read() print(G) f.close()

操作方式:只读,只写,追加,读写,写读

只读:mode = ‘r’

mode = ‘rb’,输出bytes类型,不用添加encoding

f = open('day03.py',mode='rb')
g = f.read()
print(g)

文件中的数据类型是bytes,而输出后的类型是str

所以pycharm中的open函数进行了一个转换

2.只写:

没有该文件,则自动创建

f = open('day09练习',mode = 'w',encoding= 'utf-8')
f.write('加油')
f.close()

这里我用的是相对路径,也可以用绝对路径进行准确创建。

内容的话:会先将原文件的内容删除,后添加write里面的内容。

3.追加:

将只写中的mode改为a:

f = open('day09练习',mode='a',encoding='utf-8')
f.write('同思远')
f.close()

ab,rb,wb

f = open('day09练习',mode='ab')
g = f.write('tongsiyuan'.encode('utf-8'))
print(g)

利用字符串的操作方法   str.encode()将默认的Unicode改为UTF-8添加到文件

4.R+:

读写,r+:

f = open('day09练习',mode ='r+',encoding='utf-8')
print(f.read())
f.write('ddd')
f.write('ddd')
f.write('wdd')

R+的顺序一定是先读后写(写的次数不限)

如果先写再读,那么光标从最前面开始,写几个数据,则清除几个添加几个

python中的文件是不能修改的(python中没有提供修改文件的方法)

但是我们可以将源文件在python中修改后写入另外一个文件(命名为源文件),然后删除源文件,达到看似修改了得目的:

这里我们引入os模板:

os,语义为操作系统,所以肯定就是操作系统相关的功能了,可以处理文件和目录这些我们日常手动需要做的操作,就比如说:显示当前目录下所有文件/删除某个文件/获取文件大小……

源文件:dream:fighting replace

be yourself

我们利用下面代码进行操作:

with open('dream',encoding= 'utf-8') as f ,open('dream.1','w',encoding='utf-8') as g :
for line in f:
if 'fighting replace' in line :
line = line.replace('fighting replace','Tsy')
g.write(line)
import os
os.remove('dream')
os.rename('dream.1','dream')


Day05 (黑客成长日记) 文件操作系列的更多相关文章

  1. C# 文件操作系列一

    在.Net环境中,所有关于文件操作的类都在System.IO命名空间下,注:在修改文件时,安全性显得格外重要,但是本随笔不过多讲述安全性,这里假设我们有足够的权限. 1.管理文件系统 先通过一幅图来了 ...

  2. python学习日记(文件操作)

    文件操作概述 计算机系统分为:操作系统,计算机硬件,应用程序. 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众所周知,应用程序 ...

  3. Java文件操作系列[3]——使用jacob操作word文档

    Java对word文档的操作需要通过第三方组件实现,例如jacob.iText.POI和java2word等.jacob组件的功能最强大,可以操作word,Excel等格式的文件.该组件调用的的是操作 ...

  4. Java文件操作系列[2]——使用JXL操作Excel文件

    由于java流无法实现对Excel文件的读写操作,因此在项目中经常利用第三方开源的组件来实现.支持Excel文件操作的第三方开源组件主要有Apache的POI和开源社区的JXL. 总体来说,二者的区别 ...

  5. Windows phone开发之文件夹与文件操作系列(一)文件夹与文件操作

    Windows phone7中文件的存储模式是独立的,即独立存储空间(IsolatedStorage).对文件夹与文件操作,需要借助IsolatedStorageFile类. IsolatedStor ...

  6. C#文件操作系列(一)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...

  7. Day12 (黑客成长日记) 函数

    一.递归函数: 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. #计算阶乘: def fact(n): if n == 1: return 1 return n ...

  8. Day09 (黑客成长日记) 爬虫入门

    爬虫的基本流程: 发起请求通过HTTP库向目标站点发起请求,也就是发送一个Request,请求可以包含额外的header等信息,等待服务器响应 获取响应内容如果服务器能正常响应,会得到一个Respon ...

  9. Day06 (黑客成长日记) 初识函数和返回值的作用

    定义函数: 1.初识函数: 我们在学习字符串时,有这样的操作: li = 'tsy be ba bvake ' print(len(li)) 这样可以打印出li的长度,我们利用了python中的len ...

随机推荐

  1. SSRS表达式里引用.net dll

    在SSRS的表达式里使用了一个.NET的DLL,用来生成条码图片,发布以后用不了. 需要修改一个SSRS的权限配置项,确保Report_Expressions_Default_Permissions的 ...

  2. nagios监控mysql及邮件报警

    1.使用默认监控命令check_http命令+相关的参数来实现,如下: 在command.cfg添加如下关键词监控命令:check_http_word,参数解析:-I指定IP或者主机名,-u指定URL ...

  3. superset在 centos 7安装运行

    参考:1.http://blog.csdn.net/u014729236/article/details/76302888?locationNum=2&fps=1 2.https://www. ...

  4. pandas进行条件格式化以及线性回归的预测

    条件格式化 需求1: 将三次考试的成绩小于60分的值找出来,并将字体变为红色 需求2: 将每次考试的第一名找出来,将背景变为绿色 需求3: 使用背景颜色的深浅来表示数值的大小 需求4: 使用数据条的长 ...

  5. 从裸机到实时操作系统RTOS

    最近有点闲,公司新年过后一直没有项目,手头上维护的两个程序也比较稳定. 想起来去年做的商业时钟,做了一半,销售反馈回来说,市场不明朗,不建议往下开展,就搁置了,趁着现在有空,把他捡起来. 原来的代码都 ...

  6. Windows内核开发之串口过滤

    学习了几个月的内核编程,现在对Windows驱动开发又了更加深入的认识,特别是对IRP的分层处理逻辑有了深入认识. 总结起来就几句话: 当irp下来的时候,你要根据实际情况,进行处理 1> 无处 ...

  7. 线程和进程PYTHON

    基本概念: 计算机一次只能运行一个进程,而一个进程又可以有多个线程,例如百度网盘的上传和下载. 1.线程的创建 .调用threading模块 .创建线程theading.Threads(target ...

  8. FileInputStream文件字节输入流程序

    第一种:.read() 一次读一个字节,返回值类型是int,方法读取硬盘访问次数太频繁.缺点:效率低,伤硬盘 import java.io.FileInputStream; import java.i ...

  9. 【c # 数据库】存储过程

    可理解存储过程是方法,快速调用,方便使用. 数据库建立新的存储过程: CREATE PROCEDURE myProc -- Add the parameters for the stored proc ...

  10. python 基础 ----- 变量

    ------  python注释 注释的作用:代码提示,运行时忽略不必要的代码 注释的三种方式: 1.“#” 单行注释 2.多行注释   三个单引号  和三个双引号都可以 注释的快捷键 Ctrl + ...