1.文件:是操作系统提供的概念

2. open(r+'文件路径' , '打开方式' , '用什么字符编码')   #r 表示原始字符串

eg:open(r'C:\Users\13264\Desktop\aaaa.py','r',encoding='utf-8')

3.文件打开:

f=open(r'aaaa.py')

这个过程等于干了两件事:第一是操作系统打开文件,第二是在内存中开空间存一个变量

4.文件回收:

f.close    # 这是在关闭操作系统级别占有的内存

5.文件的处理方法:

①文本文件:只读模式,文件不存在报错

read    readable    readline    readlines

扩展:光标的移动seek

②文本文件:只写模式,文件不存在会创建,文件存在则会清空文件内容

write    writeable    writelines

③文本文件:只追加写模式,   'a'     ,文件不存在则创建,存在则在文本最后添加内容

④b模式:bytes模式

#rb
# f=open('aaaa.py','rb')
# print(f.read().decode('utf-8')) # f=open('1.jpg','rb')
# data=f.read() #wb
# f=open('2.jpg','wb')
# f.write(data) # f=open('new_3.txt','wb')
# f.write('aaaaa\n'.encode('utf-8')) #ab
f=open('new_3.txt','ab')
f.write('aaaaa\n'.encode('utf-8'))

6.上下文管理:不用担心文件的close

# with open(r'aaaa.py','r',encoding='utf-8') as read_f,\
# open(r'aaaa_new.py','w',encoding='utf-8') as write_f:
# data=read_f.read()
# write_f.write(data)

7.#循环取文件每一行内容

  with open('a.txt','r',encoding='utf-8') as f:
# while True:
# line=f.readline()
# if not line:break
# print(line,end='') # lines=f.readlines() #只适用于小文件
# print(lines)
for line in f: #推荐使用
         print(line,end='')

8.文件的修改

#方式一:只适用于小文件
# import os
# with open('a.txt','r',encoding='utf-8') as read_f,\
# open('a.txt.swap','w',encoding='utf-8') as write_f:
# data=read_f.read()
# write_f.write(data.replace('alex_SB','alex_BSB'))
#
# os.remove('a.txt')
# os.rename('a.txt.swap','a.txt') #方式二:
import os
with open('a.txt','r',encoding='utf-8') as read_f,\
open('a.txt.swap','w',encoding='utf-8') as write_f:
for line in read_f:
write_f.write(line.replace('alex_BSB','BB_alex_SB')) os.remove('a.txt')
os.rename('a.txt.swap','a.txt')
 

python-day10--文件处理的更多相关文章

  1. Python读写文件

    Python读写文件1.open使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('t ...

  2. python计算文件的md5值

    前言 最近要开发一个基于python的合并文件夹/目录的程序,本来的想法是基于修改时间的比较,即判断文件有没有改变,比较两个文件的修改时间即可.这个想法在windows的pc端下测试没有问题. 但是当 ...

  3. python操作文件案例二则

    前言 python 对于文件及文件夹的操作. 涉及到 遍历文件夹下所有文件 ,文件的读写和操作 等等. 代码一 作用:查找文件夹下(包括子文件夹)下所有文件的名字,找出 名字中含有中文或者空格的文件 ...

  4. Python :open文件操作,配合read()使用!

    python:open/文件操作 open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) 如何打开文件 handle=open(file_name,a ...

  5. python学习 文件操作

    一.python打开文件 #=====================python 文件打开方式 open()===================== # open(fileName,type) t ...

  6. Python之文件读写

    本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 I/O在计算机中是指Input ...

  7. python 遍历文件夹 文件

    python 遍历文件夹 文件   import os import os.path rootdir = "d:\data" # 指明被遍历的文件夹 for parent,dirn ...

  8. python检测文件的MD5值

    python检测文件的MD5值MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2.MD3和MD4发展而来.MD5算法的使用不需要支付任何版权 ...

  9. Python编码/文件读取/多线程

    Python编码/文件读取/多线程 个人笔记~~记录才有成长   编码/文件读取/多线程 编码 常用的一般是gbk.utf-8,而在python中字符串一般是用Unicode来操作,这样才能按照单个字 ...

  10. python 读写文件和设置文件的字符编码

    一. python打开文件代码如下: f = open("d:\test.txt", "w") 说明:第一个参数是文件名称,包括路径:第二个参数是打开的模式mo ...

随机推荐

  1. C/C++之extern "C"的用法解析

    extern "C"的用法解析 http://blog.sina.com.cn/u/494a1ebc010004g5 C++中extern “C”含义深层探索 1.引言 C++语言 ...

  2. Jmeter--正则表达式提取器

    正则提取器的一般使用场景是, 在我第二个请求参数中需要加入第一个请求的返回值, 此时通过正则提取器可以提取第一个请求返回值中指定的字段信息并赋值, 在第二个请求参数中直接引用该变量即可 jmeter的 ...

  3. java输出重定向

    Java的标准输入,输出分别是通过System.in和System.out来代表.默认情况下他们分别代表键盘和显示器. System类里提供了3个重定向标准输入,输出的方法. static void ...

  4. MySQL Crash Course #02# Chapter 3. 4 通配符. 分页

    索引 查看表.文档操作 检索必须知道的两件事 数据演示由谁负责 通配符.非必要不用 检索不同的行 限制结果集.分页查找 运用数据库.表全名 命令后加分号对于很多 DBMS 都不是必要的,但是加了也没有 ...

  5. java反射之-性能优化

    在最近的计划中,打算看看在不使用google protobuf的情况下,在原有的采用jackson作为json序列化工具的基础上,是否可以实现进一步的性能优化.主要是针对list的情况. 测试的时候选 ...

  6. 07:urllib与urllib2基本使用

    参考博客:https://blog.csdn.net/chendong_/article/details/51973499 1.1 urllib2发送get请求 # -*- coding:UTF-8 ...

  7. Android 实践项目开发一

    这次做的项目是—手机地图系统 本次实验的功能是,为用户提供需要的目标定位系统定位处理,即用户设置一个目标后, 可以在后台启动一个Service,能够定时读取GPS数据已获得用户当前所在的位置信息, 并 ...

  8. PHP Extension

    新手搞PHP ,之前用过 PERL, BASH: 所以开始用PHP 写程序上手比较快, 几天之后对PHP 的内部实现机制产生了兴趣,所以自己尝试着写写简单的PHP 扩展,以增加对PHP 的理解.   ...

  9. javascript 构造函数类和原型 prototyp e定义的属性和方法的区别

    1.把方法写在原型中比写在构造函数中消耗的内存更小,因为在内存中一个类的原型只有一个,写在原型中的行为可以被所有实例共享,实例化的时候并不会在实例的内存中再复制一份而写在类中的方法,实例化的时候会在每 ...

  10. hdu 6444 网络赛 Neko's loop(单调队列 + 裴蜀定理)题解

    题意:有编号为0~n-1的n个游戏,每个活动都有一个价值(可为负),给你m,s和k,你可以从任意一个编号开始玩,但是下一个游戏必须是编号为(i + k)%n的游戏,你最多能玩m次游戏,问你如果最后你手 ...