day 8:open文件和with的使用
本节内容:
1,open打开文件后的几种操作
2,with和open的连用
3,flush的使用
1:open
1)r权限
f = open("D:\\auto\project\\fullstack\week2\day8\小重山.txt", "r", encoding="utf-8")
data = f.read()
# read(5):只读五个字,中英文相同,一个字母一个字,一个汉字一个字,此时光标在第五个字,再次运行,读取的数据是从第五个字往后读取
print(data)
2)w权限
f = open("D:\\auto\project\\fullstack\week2\day8\小重山.txt", "w", encoding="utf-8") # 写的方式打开,会将原来的文件内容清除
f.write("hello world")
f.close()
3)a权限
f = open("小重山", "a", encoding="utf-8") # 在文件的末尾添加,文件不可读
f.write("\nhello yuefei \n")
f.close() # 关闭打开的文本
4)r+,a+,w+的区别
# ----- r+的用法 ----
f = open("小重山", "r+", encoding="utf-8")
print(f.readline()) # 必须有read的动作才能够添加 ,不然不能添加成功
f.write("你好") # 写在最后
f.seek(0)
for i in f:
print(i.strip()) # 去除前后空格
f.close()
# -------------- w+的用法--------------
f = open("小重山1", "w+", encoding="utf-8")
f.write("你好")
print(f.tell()) # 获取当前光标所在位置,字节位置
f.seek(0) # 光标移动到开始
for i in f:
print(i.strip())
f.close()
a+和w+的用法相同,只是在打开文件的时候不清空
2,with和open的连用
with open("小重山", "r", encoding="utf-8") as f, open("新小重山", "w+", encoding="utf-8") as f2:
# with的使用可以在结束的时候自动关闭文件,不需要在运行的最后加上close
number = 1
for i in f:
if number == 6:
i = ''.join((i.strip(), "alex"))
f2.write(''.join((i.strip(), "\r")))
number += 1
f2.seek(0)
for new in f2:
# 使用的时候迭代器的方式,不容易导致内存被过多的占用
print(new.strip())
3,flush的使用,实现进度条的功能
import sys, time
for i in range(100):
sys.stdout.write("*")
sys.stdout.flush() # 将写的文本存入硬盘当中
time.sleep(0.2)
day 8:open文件和with的使用的更多相关文章
- Mapreduce的文件和hbase共同输入
Mapreduce的文件和hbase共同输入 package duogemap; import java.io.IOException; import org.apache.hadoop.co ...
- mapreduce多文件输出的两方法
mapreduce多文件输出的两方法 package duogemap; import java.io.IOException; import org.apache.hadoop.conf ...
- 01.SQLServer性能优化之----强大的文件组----分盘存储
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 文章内容皆自己的理解,如有不足之处欢迎指正~谢谢 前天有学弟问逆天:“逆天,有没有一种方 ...
- SQL Server 大数据搬迁之文件组备份还原实战
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 解决方案(Solution) 搬迁步骤(Procedure) 搬迁脚本(SQL Codes) ...
- SQLSERVER将一个文件组的数据移动到另一个文件组
SQLSERVER将一个文件组的数据移动到另一个文件组 有经验的大侠可以直接忽视这篇文章~ 这个问题有经验的人都知道怎麽做,因为我们公司的数据量不大没有这个需求,也不知道怎麽做实验 今天求助了QQ群里 ...
- SQL Server中的高可用性(2)----文件与文件组
在谈到SQL Server的高可用性之前,我们首先要谈一谈单实例的高可用性.在单实例的高可用性中,不可忽略的就是文件和文件组的高可用性.SQL Server允许在某些文件损坏或离线的情况下,允 ...
- C# ini文件操作【源码下载】
介绍C#如何对ini文件进行读写操作,C#可以通过调用[kernel32.dll]文件中的 WritePrivateProfileString()和GetPrivateProfileString()函 ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...
- GreenDao 数据库:使用Raw文件夹下的数据库文件以及数据库升级
一.使用Raw文件夹下的数据库文件 在使用GreenDao框架时,数据库和数据表都是根据生成的框架代码来自动创建的,从生成的DaoMaster中的OpenHelper类可以看出: public sta ...
随机推荐
- mac环境破解navicat premium 12.1
1. 下载破解工具 https://github.com/DoubleLabyrinth/navicat-keygen/tree/mac 其中,navicat-keygen为破解器:navicat-p ...
- 听说jupyter notebook代码提示不友好?
作为一个业余的Python爱好者,我是一只在使用着最省事的pycharm 尽管以前见好多大牛都用过 但是今天又看到关于jupyter notebook的推送了,于是就尝试了一下 这好像也就是jupyt ...
- Kafka(1)--kafka基础知识
Kafka 的简介: Kafka 是一款分布式消息发布和订阅系统,具有高性能.高吞吐量的特点而被广泛应用与大数据传输场景.它是由 LinkedIn 公司开发,使用 Scala 语言编写,之后成为 Ap ...
- appium 使用环境安装配置记录
一.安装配置Java (cmd输入java,回车,没有出现“不是内部或外部命令,也不是可运行的程序或批处理文件”,即为成功) 二.安装node.js (cmd输入node -v,显示版本号即为成功) ...
- 如何用Bat批处理自制自解压文件
转载▼http://blog.sina.com.cn/s/blog_48462a890102e0nu.html 1.在桌面上新建一个文本文档,如:“新建 文本文档.txt”,方法是:在桌面的空 ...
- Tomcat下载以及安装、eclipse工具配置tomcat9的具体步骤
(小白经验,大咖勿喷) 开始学javaweb的一些技术了,最让人头疼的就是环境的配置以及必要软件的安装,比如数据库mysql.服务器Tomcat.eclipse工具等等. 自己也度娘了很多大咖的经验, ...
- 2.表单与PHP
不管是一般的企业网站还是复杂的网络应用,都离不开数据的添加.通过PHP服务器端脚本语言,程序可以处理那些通过浏览器对Web应用进行数据调用或添加的请求. 回忆一下平常使用的网站数据输入功能,不管是We ...
- 解决matplotlib中文显示
网上搜的很多方法都不是很好用,这里找到了一个比较好用的办法. 首先将win上的中文字体复制到linux目录下面,我这里使用的是simhei.ttf.然后参考如下代码的使用方式: import matp ...
- TIMESTAMP类型字段在SQL Server和MySQL中的含义和使用
公众号上转的满天飞的一篇文章,MySQL优化相关的,无意中瞄到一句“尽量使用TIMESTAMP而非DATETIME”,之前对TIMESTAMP也不太熟悉,很少使用,于是查了一下两者的区别. 其实,不管 ...
- 吴裕雄 python 机器学习——Lasso回归
import numpy as np import matplotlib.pyplot as plt from sklearn import datasets, linear_model from s ...