read()方法用于直接读取字节到字符串中,可以接参数给定最多读取的字节数,如果没有给定,则文件读取到末尾。

readline()方法读取打开文件的一行(读取下个行结束符之前的所有字节),然后整行,包括行结束符,作为字符串返回。

readlines()方法读取所有行然后把它们作为一个字符串列表返回

########

write()方法和read()、readline()方法相反,将 ####字符串####写入到文件中。

和readlines()方法一样,writelines()方法是针对####列表####的操作。它接收一个字符串列表作为参数,将他们写入到文件中,换行符不会自动的加入,因此,需要显式的加入换行符。

1.write

>>> >fobj = open('x','w')      ###确保/root/3.txt没有存在,如果存在,则会首先清空,然后写入。
>>> >msg = ['write date','to x','finish'] ###这里没有显式的给出换行符
>>> >for m in msg:
... fobj.write(m)
...
>>> >fobj.close()
x内容:
write dateto xfinish
>>>>fobj = open('x','w') ###覆盖之前的数据
>>>>msg = ['write date\n','to x\n','finish\n'] ###显式给出换行符
>>> >for m in msg:
... fobj.write(m)
...
>>> >fobj.close()
x内容:
write date
to x
finish
>>> f=open('x','w')
>>> f.write('this\nis\nschool') #write(string)
>>> f.close()
>>>
>>> f=open('x','r')
>>> f.read() #在这里直接f.read()读出的是不换行的一段字符。
'this\nis\nschool'
>>> >>> f=open('x','r')
>>> print f.read() #使用print语句将文件somefile-11-4.txt文件的真正内容显示出来。
this
is
school
>>>

2.writelines(string)

>>>>fobj = open('x','w')
>>>>msg = ['write date\n','to x\n','finish\n']
>>>>fobj.writelines(msg)
>>>>fobj.close()
x内容:
write date
to 3.txt
finish
>>> f=open('x','r')
>>> lines=f.readlines() #将读到的文件内所有的内容放到分配的内存lines里
>>> f.close()
>>> lines[1]="isn't a\n" #这里必须是双引号,而不是单引号,否则报错,在内存的第二行写上字符:isn't a
>>> f=open('x','w') #以写的方式打开文件
>>> f.writelines(lines) #将内存lines里的内容写入到文件对象f里
>>> f.close()
>>> f=open('x','r') #以读的方式打开文件somefile-11-4.txt
>>> print f.read() #将读出的所有内容打印出来
this
isn't a
school
>>>

3.读文件

>>> f=file("x")
>>> for line in f.readlines():
... print line, #如果不加逗号可能会出现多个空白行,加一个逗号可以避免这种情况,并且这样写可以避免文件里如果有中文会乱码的情况
this
isn't a
school >>>f=file("x")
>>>f.readline()
this
>>>f,readline()
isn't a
>>>f.readline()
school
>>> f = open("x","r")
>>> print f.read()
this
isn't a
school

python 写文件write(string), writelines(list) ,读文件的更多相关文章

  1. InputStream读取文件到string后OutputStream到文件,按String和Bytes拷贝

    http://www.iteye.com/problems/72150 写了一段代码 大体是 InputStream读取文件到string后OutputStream到文件 遇到的问题为TXT文件大小格 ...

  2. python (11)文件的读写 按行读文件

    读文件: 读取文件 f = open('\info.txt') fil = f.read() f.close() 按行读文件: f = open("info.txt") while ...

  3. hive分区与实际分区文件不匹配导致spark读文件出错的问题解决

    先解释下,由于历史原因导致hive中的看到分区比hdfs中的文件夹不匹配,存在hive中分区数有,实际hdfs中无此文件夹. spark中通过sparkSQL读取hive中的该表时,将会出现异常. 解 ...

  4. java中多种方式读文件

    转自:http://www.jb51.net/article/16396.htm java中多种方式读文件 一.多种方式读文件内容. 1.按字节读取文件内容 2.按字符读取文件内容 3.按行读取文件内 ...

  5. 文件被占用导致Hive Load文件不成功

    用Python写了个用LOAD命令将文件导入Hive的程序,开始代码写成下面这样: def loadToHive(bakFilePath, tbName): try: transport = TSoc ...

  6. 【C#-文件管理】 判断文件夹或文件是否存在,并创建文件夹或文件

    1.判断文件夹是否存在 Directory.Exists(“文件夹路径”)    返回false表示不存在,true表示存在 2.判断文件是否存在 File.Exists("文件路径&quo ...

  7. Python: 读文件,写文件

    读写文件是最常见的IO操作.Python内置了读写文件的函数. 读写文件前,我们先了解一下,在磁盘上读写文件的功能都是有操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求 ...

  8. 根据python上下文管理,写一个在读文件内容前后自动打开关闭文件的程序

    利用上下文管理实现读f文件前后自动打开关闭文件#在本目录创建f文件,内容写monkey代码如下 import contextlib #导入模块1 @contextlib.contextmanager# ...

  9. day08文件操作的三步骤,基础的读,基础的写,with...open语法,文件的操作模式,文件的操作编码问题,文件的复制,游标操作

    复习 ''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int:int('10') | int('-10') | int('0') | float('-.5 ...

随机推荐

  1. 调戏OpenShift:一个免费能干的云平台(已失效)

    一.前因后果 以前为了搞微信的公众号,在新浪sae那里申请了一个服务器,一开始还挺好的 ,有免费的云豆送,但是一直运行应用也要消费云豆,搞得云豆也所剩无几了.作为一名屌丝,日常吃土,就单纯想玩一玩微信 ...

  2. 【HMOI】小C的填数游戏 DP+线段树维护

    [题目描述] 一个长为n的序列,每个元素有一个a[i],b[i],a[i]为0||1,每个点和他相邻的两个点分别有两条边,权值为cost1[i],cost2[i],对于每个区间l,r,我们可以给每一个 ...

  3. LINUX-内核-中断分析-中断向量表(3)-arm【转】

    转自:http://blog.csdn.net/haolianglh/article/details/51986987 arm中断概念 在<ARM体系结构与编程>第9章中说到,ARM 中有 ...

  4. hadoop中setOutputKeyClass和setOutputValueClass里类型

    初学mapreduce programing,纠结一天的问题如下: job.setOutputKeyClass和job.setOutputValueClas在默认情况下是同时设置map阶段和reduc ...

  5. iOS一个项目开始创建, 部署到git服务器

    在做iOS开发时, 最开始可能你的经理部署项目, 所以你不会插手, 只是直接从git上clone下来然后就开始撸码, 如果有一天你做经理了, 你怎么去部署一个项目呢, 下面我来过一遍流程 1. 首先需 ...

  6. lsb_release查看当前系统的发行版信息

    Linux除了用uname -r查看系统版本信息外,还可以用lsb_release. 安装: yum install -y redhat-lsb-core 使用: lsb_release -a

  7. NOIP 2013 day1

    tags: 模拟 快速幂 逆序对 树状数组 归并排序 最小生成树 lca 倍增 categories: 信息学竞赛 总结 tex live 2017.iso 转圈游戏 火柴排队 货车运输 转圈游戏 s ...

  8. mysql设置服务器编码

    今天写java程序的时候出现了插入mysql数据中文乱码问题,确定数据库和表的编码都已指定utf-8.百度后得知mysql安装后需设置服务器编码,以下是解决方法(ubuntu; mysql 5.6.2 ...

  9. 在写一次epoll

    epoll & select & poll只能处理IO相关的操作,epoll每一个操作必须注册到时间监控机制中,并且还需要进程或者线程进行管理. 多进程/多线程 和epoll相比较 e ...

  10. ReentrantLock 学习

    Java接口Lock有三个实现类:ReentrantLock.ReentrantReadWriteLock.ReadLock和ReentrantReadWriteLock.WriteLock.Lock ...