file的基本操作;file的修改
file的基本操作
# Author:nadech
# 文件读写/修改/
#data = open("yesterday",encoding="utf-8").read()
#这里要设置打开模式,默认是读r;
#w的时候会打开文件,把之前文件覆盖;
#a模式,append追加
import sys,time f = open("yesterday","r",encoding="utf-8")#f叫文件句柄,它包含了文件的名称,文件的大小,文件内存的起始位置等 #改变文件句柄的指针位置
print(f.readline())
print(f.tell())
f.seek(0)
print(f.readline())
#编码方式
print(f.encoding)
#操作系统给该文件句柄分配的编号
print(f.fileno())
# flush(),文件在执行写操作时,并不是实时写入到硬盘中的,而是当内存中缓存到一定数量之后写入,但是有些数据要求实时写入就可以用flush()强制写入 data = f.read()
print(data) f.write("\n 我爱北京天安门,\n")
f.write("\n 你是一个大傻逼。") print(f.readline())
print(f.readline()) #readlines只适合读小文件
for line in f.readlines():
print(line.strip()) #只读5行
for index,line in enumerate(f.readlines()):
print("%s:"%(index),line) # 以上读文件的方法都可以忘记,因为上边的效率很低
# 这个方法是读入内存中一行,执行一行,而不是所有的都读到内存中
# 但是这个需要自己加一个计数器 count = 0
for line in f:
if count == 9:
print("——————我是分割线——————")
count+=1 print(line.strip())
count+=1
for i in range(20):
sys.stdout.write("#")
sys.stdout.flush()
time.sleep(0.2)
#truncate(),截断,里边的数字是从头剩下的字符数
f.truncate() #读写,可以读,可以写,写在后边
f1 = open("yesterday2","r+",encoding="utf-8") print(f1.readline())
print(f1.readline())
print(f1.readline()) f1.write("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
f1.write("gkukhkhkhkhkh")
#写读 w+
#追加读 a+,这两个模式不怎么使用 #rb,用来读二进制文件,但是并不是看到的01010101,是文件按照二进制处理(网络传输ftp,socket;视频文件,音频文件)
# f = open("yesterday","rb")
#wb,二进制的写 #with语句 #with open("yesterday","r",encoding="utf-8") as f:
#同时打开多个文件0
# with open("yesterday","r",encoding="utf-8"),\
# open("yesterday","r",encoding="utf-8")
file的修改并不是直接在源文件中进行修改,而是新建文件,将要修改的内容修改掉
# Author:nadech
f = open("yesterday","r",encoding="utf-8")
f_new = open("yesterday_back","w",encoding="utf-8")
for line in f:
if "令我笑容满面" in line:
line = line.replace("令我笑容满面","令nadech笑容满面")
f_new.write(line)
file的基本操作;file的修改的更多相关文章
- Java File类基本操作
我们可以利用Java.io.File类对文件进行操作,基本操作如下: 1)创建文件: public boolean createNewFile() throws IOException 2)删除文件: ...
- 01.File文件基本操作
1-创建File对象 /** * 创建我们 java.io.File对象 */ public static void test1() { //第一创建对象方式 File parent=new File ...
- File 的基本操作
package xinhuiji_day07; import java.io.File;import java.io.IOException; public class FileTest { /** ...
- linux 缺少动态连接库.so--cannot open shared object file: No such file or directory
error while loading shared libraries的解決方法 执行行程式時,如此遇到像下列這種錯誤: ./tests: error while loading shared l ...
- 【Android】error opening trace file: No such file or directory (2)
1.问题描述: 运行报错: 12-25 13:35:32.286: E/Trace(1202): error opening trace file: No such file or directory ...
- 关于ImportError: libssl.so.10: cannot open shared object file: No such file or directory unable to load app 0 (mountpoint='') (callable not found or import error)
一.问题描述 在亚马逊云服务器使用Nginx+uwsgi部署django项目时,项目可以使用python manage.py runserver正常运行,uwsgi测试也没问题,Nginx也正常启动, ...
- this inspection reports usage of the default file template for file header
使用idea创建一个java class的时候会出现如下的warning: this inspection reports usage of the default file template for ...
- nginx排错error while loading shared libraries:libpcre.so.1:cannot open shared object file:No such file or directory
启动nginx报错:error while loading shared libraries:libpcre.so.1:cannot open shared object file:No such f ...
- centos6.9安装xampp后报错:egrep: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
1.centos6.9安装xampp(xampp-linux-x64-7.0.21-0-installer.run)后启动的时候,报错: egrep: error while loading shar ...
随机推荐
- Dictionary导致CPU暴涨
中午吃完饭回来,刚想眯一会,突然发现公司预警群报警,某台机器CPU100%,连续三次报警,心里咯噔一下,我新开发的程序就在这上面,是不是我的程序导致的?立马远程,oh my god,果然是. 二话不说 ...
- 创建以mybatis为基础的web项目(2)mabitis中的一对一关系项目实战
mabitis中的一对一关系项目实战: 1.首先根据创建以mybatis为基础的web项目(1)中的流程将web项目部署好 打开IDE,建立web工程 在lib下面粘贴mybatis的jar,log4 ...
- SpringMVC(六):@RequestMapping下使用@RequestHeader绑定请求报头的属性值、@CookieValue绑定请求中的Cookie值
备注:我本地浏览器的报头(Request Header)信息如下: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image ...
- Spark:性能调优
来自:http://blog.csdn.net/u012102306/article/details/51637366 资源参数调优 了解完了Spark作业运行的基本原理之后,对资源相关的参数就容易理 ...
- hdu 6095 Rikka with Competition---思维题贪心
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=6095 题目大意: 任意两个人相比,相差大于K,分低的淘汰,否则两人都有可能赢,剩下的继续比,问有最多 ...
- Scrapy抓取Quotes to Scrape
# 爬虫主程序quotes.py # -*- coding: utf-8 -*- import scrapy from quotetutorial.items import QuoteItem # 启 ...
- SQL外连接
1.左外连接 取出左侧关系中所有与右侧关系中任一元组都不匹配的元组,用空值null充填所有来自右侧关系的属性,构成新的元组,将其加入自然连接的结果中 2.右外连接 取出右侧关系中所有与左侧关系中任一元 ...
- jQuery系列 第六章 jQuery框架事件处理
第六章 jQuery框架事件处理 JavaScript以事件驱动来实现页面的交互,其核心是以消息为基础,以事件来驱动.虽然利用传统的JavaScript事件处理方式也能够完成页面交互,但jQuery框 ...
- Git的本地仓库与GitHub的远程仓库
gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub.GitHub 是目前为止最大的开源 Git 托管服务,并且还是少数同时提供公共代码 ...
- C#生成MD5码
/// <summary> /// 获取文件的MD5码 /// </summary> /// <param name="fileName">传入 ...