Python入门—文件读写
文件读写的基本流程:
#1、打开文件
#2、读写文件
#3、关闭文件 f = open('文件读写',encoding='utf-8') #打开文件,并赋值给f,encoding='utf-8'让中文可以正常显示不会报错
f = open(r'C:\Users\shanbaoliang\PycharmProjects\untitled2\day2\文件读写',encoding='utf-8') #可以写绝对路径,强制字符r'c:\niuhanyang' f.readline() #读取文件一行数据,读完文件指针下移
f.readlines() #获取文件里所有数据,每一行数据放到一个list里面,换行会读到\n
f.read() #读取文件,获取文件所有内容 文件打开方式:
r 读模式 只能读 不能写 文件不存在会报错
r+ 读写模式 能读 能写 文件不存在会报错 w 写模式 不能读 能写,会覆盖 文件不存在创建一个
w+ 写读模式 指针在文件最后,读空 能写,会覆盖 文件不存在创建一个 a 追加模式 不能读 能写,写在最后 文件不存在创建一个
a+ 追加模式 指针在文件最后,读空 能写,写在最后 文件不存在创建一个 指针移动:
f.seek(0) #移动指针到文件的哪个位置,0表示最前面
f.cloes 关闭文件 names=['a','b','c']
for name in names :
f.write(name+'\n') f.writelines(names) #将list中元素写入文件,names=['a\n','b\n','c\n']
f = open('data.txt','r+',encoding='utf-8') for line in f : #循环文件对象,每次取一行
# print(line) f = open('data.txt','r+',encoding='utf-8')
f.seek(0)
new=f.read().replace('123','a') #对应位置修改,
print(new)
f.write(new)
缓存区立即写入磁盘
#CPU——>内存——>缓冲区——>磁盘
f.write('xx,yy\n')
f.flush() #把缓冲区内容立即写到磁盘,不写可能出现write有延迟
f.close() with自动关闭文件
with open('aa','w') as f : #代码自己判断文件调用完,自动关闭
with open ('f1','w') ,open('f2','r') as f :
f.read()
f.write('sfgg')
文件修改
一、简单粗暴直接(适合文件小)
#1、先获取文件里所有内容
#2、然后修改内容
#3、清空源文件
#4、重写 f = open('data.txt','a+',encoding='utf-8')
f.seek(0)
new=f.read().replace('12','bb') #对应位置修改,只能替换相同位数的字符,否则会覆盖其他内容
print(new)
f.write(new)
f.seek(0)
f.truncate() #清空是从指针位置开始清空
f.write(new)
f.close() 方法二:高效的处理方式
#1、先打开原来的文件,再打开一个空文件
#2、把循环处理原来文件的每一行数据,处理后写到新文件
#3、把原来文件删掉,把新文件改为原文件名字 with open('words.txt',encoding='utf-8') as f, open('.words','w',encoding='utf-8') as fnew :
for line in f :
line = line.lstrip()
if line :
line = line.replace('你','you')
fnew.write(line) import os #文件操作
os.remove('words.txt') #删除文件
os.rename('.words','words') #修改文件名
Python入门—文件读写的更多相关文章
- 【转】Python之文件读写
[转]Python之文件读写 本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 ...
- 【Python】文件读写操作
Python的文件读写有点类似php的文件读写.php的文件读写已经在<[php]让记事本成为你调控变量的控制台>(点击打开链接)说过了,以下用一个小样例说明Python的文件读写. 在F ...
- (转)Python之文件读写
Python之文件读写 原文:https://www.cnblogs.com/huilixieqi/p/6494891.html 本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 ...
- python 基础-文件读写'r' 和 'rb'区别
原文链接: python基础-文件读写'r' 和 'rb'区别 一.Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 1.文件使用方式标识 'r ...
- 快速入门Python中文件读写IO是如何来操作外部数据的?
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...
- Python之文件读写
本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 I/O在计算机中是指Input ...
- python之文件读写详解
打开文件 函数open() 参数说明: file:文件路径 mode: 文件的读写方式,默认'r',只读方式: buffering:设置缓冲策略,0用于二进制文件,1为行缓冲,用于文本模式:默认二进制 ...
- python中文件读写
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...
- python的文件读写笔记
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...
随机推荐
- technologies
RPC Apache Thrift, Thrift is an interface definition language and binary communication protocol, lik ...
- Linux中Too many open files
1.ulimit –a open files一项就是默认的句柄数,最大为 65536 2.修改最大open files /etc/security/limits.conf文件中,加入以下配置: * s ...
- linux部署dns内网服务器
安装: yum -y install bind* 编辑named.conf vim /etc/named.conf options { listen-on port { any; }; listen- ...
- docker-elk装IK自定义分词库
本人的elasticsearch是docker环境下运行 运行elasticsearch的容器,通过docker命令:docker exec -it 955e8d32d4a9 /bin/bash 进入 ...
- 02-再探MySQL数据库
一.数据类型 1.数值类型 a.整数类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 作用:存储年龄,等级,id,各种号码等. =============== ...
- 主席树套树状数组——带修区间第k大zoj2112
主席树带修第k大 https://www.cnblogs.com/Empress/p/4659824.html 讲的非常好的博客 首先按静态第k大建立起一组权值线段树(主席树) 然后现在要将第i个值从 ...
- 安装Spotlight On Unix监控Linux
1.安装Spotlight 一步一步按提示安装即可- 2.安装sysstat 在Linux上,必须安装sysstat包,用户才可以获取详细的磁盘I/O信息. 执行 rpm -qa |grep syss ...
- linux 服务器常用命令整理
linux 服务器常用命令整理 目录 网络分析 - tcpdump \ telnet \ (netstat \ ss \ lsof) \ nload 网络传输 - scp \ rsync \ (rz ...
- maven 导包报错
作为初学者本应当是持之以恒的但是很长时间没有冒泡了这次冒个泡写maven项目的时候遇到了很多的bug,今天给大家分享一下解决的办法(常见的错误就是导不进来自己想要的包)要么就是导包报错以下是解决方法 ...
- Linux 下 MySQL-5.6.16 安装
转载请注明出处!!!! 卸载mysql 1 查找以前是否装有 mysql 命令:rpm -qa|grep -i mysql 2 将所有包删除 删除命令:rpm -e --nodeps 包名 3 删除 ...