Python的open的写入方式有:
write(str):将str写入文件
writelines(sequence of strings):写多行到文件,参数为可迭代对象
首先来看下writelines()这个方法:
1 f = open('blogCblog.txt', 'w') #首先先创建一个文件对象,打开方式为w
2 f.writelines('123456') #用readlines()方法写入文件
运行上面结果之后,可以看到blogCblog.txt文件有123456内容,这里需要注意的是,mode为‘w’模式(写模式),再来看下面代码:
1 f = open('blogCblog.txt', 'w') #首先先创建一个文件对象,打开方式为w
2 f.writelines(123456) #用readlines()方法写入文件
运行上面代码之后会报一个TypeError,这是因为writelines传入的参数并不是一个可迭代的对象。
接着来看write方法:
可以看到在cmd运行上面代码,明明用write写入blogCblog这个字符串,但在blogCblog.txt这个文件里面没有blogCblog这个字符串喔,也就是没有写入成功,为什么?接着来看下这段代码:
这段代码写入了10000行blogCblog字符串,打开blogCblog.txt文件发现,有内容,但只有9000多行,不是10000吗,怎么写入一个blogCblog就不成功呢?其实,Python写入过程中是把字符串写入一个叫缓冲区中,当你写入的字节大于或等于缓冲区的大小,就会自动写入到文件中,而当你写入的字节小于缓冲区的大小,就会一直存在缓冲区中。
解决这种问题的方法就是调用close()方法,先清空blogCblog.txt这个文件里的内容,再运行下面代码:
你会发现blogCblog.txt文件里有blogCblog这个字符串了,这是close()的功劳
同样的,当你写入一个大于或等于缓冲区大小的数据时,虽然没有调用close()也会写入一部分数据,这是因为缓冲区装不下那么大的数据,会自动的写入到你的文件中,剩下的数据因为小于缓冲区的大小,所以会存在缓冲区中,这就是当你写入大于或等于缓冲区大小的数据时,只写入一部分的原因,这时,只需调用close()方法,就会把缓冲区的剩下数据写入到文件中。
所以,当你操作完文件后,千万别忘了关闭!!!
另外:如果你没有关闭,就删除不掉这个文件,因为你进程占用了!还有当你打开这个文件很很多次并不关闭的话就会打开失败!
从零开始的Python学习Episode 7——文件基本操作
文件基本操作 一.打开文件 f = open('11','r')#open('file path','mode') 创建一个文件对象 文件有多种打开模式: 1. 'r':新建一个文件对象以只读方式打开 ...
Python修炼之路-文件操作
Python编程之文件操作 文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 每次文件打开.读取信息时,Python自动记录所达到的位置,好比一个书签,之后每一次 ...
python爬虫之下载文件的方式总结以及程序实例
python爬虫之下载文件的方式以及下载实例 目录 第一种方法:urlretrieve方法下载 第二种方法:request download 第三种方法:视频文件.大型文件下载 实战演示 第一种方法: ...
Python文件操作:文件的打开关闭读取写入
Python文件操作:文件的打开关闭读取写入 一.文件的打开关闭 Python能以文本和二进制两种方式处理文件,本文主要讨论在Python3中文本文件的操作. 文件操作都分为以下几个步骤: 1.打开文 ...
CSV文件在Python中的几种处理方式
Comma Separated Values,简称CSV,它是一种以逗号分隔数值的文件类型.在数据库或电子表格中,它是最常见的导入导出格式,它以一种简单而明了的方式存储和共享数据,CSV文件通常以纯文 ...
Java学习-014-文本文件写入实例源代码(两种写入方式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 第一种:文本文件写入,若文件存在则删除原文件,并重新创建文件.源代码如下所示: /** * @fun ...
Python文件处理之文件读取方式(二)
Python的open文件的读取方式有以下几种方法: read([size]):读取文件,如果传了size参数,则读取size字节,否则读取全部 readline([size]):读取一行 readl ...
Python文件处理之文件打开方式(一)
Python中打开一个文件是同过open函数来打开的,并返回一个文件对象,以下为open函数的参数: open(name[, mode[buf]]) name:文件路径 mode:打开方式 buf:缓 ...
python中逐行读取文件的最佳方式_Drupal_新浪博客
python中逐行读取文件的最佳方式_Drupal_新浪博客 python中逐行读取文件的最佳方式 (2010-08-18 15:59:28) 转载▼ 标签: python ...
随机推荐
CORS(跨源资源共享)实战
声明:本文中的cors为createCORSRequest返回的对象 1. 同一跨域接口 function createCORSRequest(method, url) { var xhr = new ...
ajax基础了解
使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据.这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息.AJAX即“Asynchronous JavaSc ...
HDU-4679 Terrorist’s destroy 树形DP,维护
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4679 题意:给一颗树,每个边有一个权值,要你去掉一条边权值w剩下的两颗子树中分别的最长链a,b,使得w ...
Android中你应该知道的设计模式
建造者模式 建造者模式最明显的标志就是Build类,而在Android中最常用的就是Dialog的构建,Notification的构建也是标准的建造者模式. 建造者模式很好理解,如果一个类的构造需要很 ...
ashx中session的使用
在平常的页面上是用是很容易就的到request,response对像,从而对其进行一些操作,但在ashx(一般处理程序)中却是有一点的不同, 在ashx你无法正常的使用session,即 contex ...
linux安装桌面软件
CentOS 作为服务器的操作系统是很常见的,但是因为需要稳定而没有很时髦的更新,所以很少做为桌面环境.在服务器上通常不需要安装桌面环境,最小化地安装 CentOS(也就是 minimal CentO ...
C语言复杂的函数指针声明
复习C语言ING,发现复杂的函数指针声明看不懂,百度半天终于略知一二. 讲的比较详细的一篇blog: ...
Python 数据分析(一) 本实验将学习 pandas 基础,数据加载、存储与文件格式,数据规整化,绘图和可视化的知识
第1节 pandas 回顾 第2节 读写文本格式的数据 第3节 使用 HTML 和 Web API 第4节 使用数据库 第5节 合并数据集 第6节 重塑和轴向旋转 第7节 数据转换 第8节 字符串操作 ...