百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

python中read()/readline()/readlines()和write()/writelines()

wptr33 2025-01-02 19:37 50 浏览

open()成功执行后返回一个文件对象,以后所有对该文件的操作都可以通过这个“句柄”来进行,现在主要讨论下常用的输入以及输出操作。

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

readline()方法读取打开文件的一行(读取下个行结束符之前的所有字节),然后整行,包括行结束符,作为字符串返回。
readlines()方法读取所有行然后把它们作为一个字符串列表返回
eg:
文件/root/2.txt的内容如下,分别使用上面的三个方法来读取,注意区别:
read():

$cat /root/2.txt
I'll write this message for you
hehe,that's will be ok.
>>>fobj = open('/root/2.txt')    ##默认已只读方式打开
>>>a = fobj.read()
>>>a
"I'll write this message for you\nhehe,that's will be ok.\n"   ##直接读取字节到字符串中,包括了换行符
>>> print a
I'll write this message for you
hehe,that's will be ok.
>>>fobj.close()    ##关闭打开的文件

readline():

>>> fobj = open('/root/2.txt')
>>>b  = fobj.readline()
>>>b
"I'll write this message for you\n"    ##整行,包括行结束符,作为字符串返回
>>>c = fobj.readline()
>>>c
>>>"hehe,that's will be ok.\n"      ##整行,包括行结束符,作为字符串返回
>>>fobj.close()

readlines():

>>>fobj = open('/root/2.txt')
>>> d = fobj.readlines()
>>>d
["I'll write this message for you\n", "hehe,that's will be ok.\n"]    ##读取所有行然后把它们作为一个字符串列表返回
>>>fobj.close()

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

>>>fobj = open('/root/3.txt','w')      ###确保/root/3.txt没有存在,如果存在,则会首先清空,然后写入。
>>>msg = ['write date','to 3.txt','finish']    ###这里没有显式的给出换行符
>>>for m in msg:
...  fobj.write(m)
...
>>>fobj.close()
>>>cat /root/3.txt
write dateto 3.txtfinish
>>>fobj = open('/root/3.txt','w')    ###覆盖之前的数据
>>>msg = ['write date\n','to 3.txt\n','finish\n']     ###显式给出换行符
>>>for m in msg:
...  fobj.write(m)
...
>>>fobj.close()
>>>cat /root/3.txt
write date
to 3.txt
finish

writelines():

>>>fobj = open('/root/3.txt','w')
>>>msg = ['write date\n','to 3.txt\n','finish\n']
>>>fobj.writelines(msg)
>>>fobj.close()
>>>cat /root/3.txt
write date
to 3.txt
finish

相关推荐

python数据容器之列表、元组、字符串

数据容器分为5类,分别是:列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)list#字面量[元素1,元素2,元素3,……]...

深入理解 PYTHON 虚拟机:令人拍案叫绝的字节码设计

深入理解PYTHON虚拟机:令人拍案叫绝的字节码设计在本篇文章当中主要给大家介绍cpython虚拟机对于字节码的设计以及在调试过程当中一个比较重要的字段co_lnotab的设计原理!PYT...

Python快速学习第一天!

第一天:Python是一种解释型的、面向对象的、带有动态语义的高级程序设计语言一、运行Python:1、在交互式环境下,直接输入Python进入Python编程环境[root@tanggao/]#...

Java 程序员的第一套Python代码

选择的Web组件是Python里面的Django,这不一定是一个最佳的框架或者最快的框架,当时他应该算是一个最成熟的框架。...

Python 中 必须掌握的 20 个核心函数及其含义,不允许你不会

以下是Python中必须掌握的20个核心函数及其含义...

Python代码:按和值奇偶比对号码进行组合

Python代码:按和值奇偶比对号码进行组合不少朋友在选定号码以后,会按照一定的和值来组号,比如大乐透常见和值有626372737481108116等我们不用固定在一个数上,我们可以给定...

30天学会Python编程:16. Python常用标准库使用教程

16.1collections模块16.1.1高级数据结构16.1.2示例...

Python强大的内置模块collections

1.模块说明collections是Python的一个内置模块,所谓内置模块的意思是指Python内部封装好的模块,无需安装即可直接使用。...

Python自动化办公应用学习笔记31—全局变量和局部变量

一个Python程序中的变量包括两类:全局变量和局部变量。一、全局变量·...

精通Python可视化爬虫:Selenium实战全攻略

在数据驱动的时代,爬虫技术成为获取信息的强大武器。而Python作为编程界的“瑞士军刀”,搭配Selenium库,更是让我们在动态网页抓取领域如鱼得水。本文将带你深入探索PythonSelenium...

Python中的数据类型操作

...

Python教程(二十五):装饰器–函数的高级用法

今天您将学习什么...

玩转Python列表/字典:增删改查与高效遍历技巧

为什么列表和字典是Python的灵魂?你是否遇到过这样的场景?想存储学生成绩,用列表却发现查找某个学生的分数像大海捞针?用字典存储购物车商品,却不知道如何高效批量修改价格?遍历数据时,传统循环写得...

Python列表操作

Python添加列表4分钟阅读在Python操作列表有各种方法。例如–简单地将一个列表的元素附加到...

充分利用Python多进程提高并发

在计算机编程中,我们经常需要同时执行多个任务。然而,传统的单线程方式无法充分利用计算机的多核处理器,导致程序的执行效率低下。Python中的多进程编程技术可以帮助我们解决这个问题,通过同时运行多个进程...