首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python基础教程 读取和写入

11.2 文件的基本方法

知道如何打开文件后,下一步是使用它们来做些有用的事情。本节介绍文件对象的一些基本方法以及其他类似于文件的对象(有时称为流)。类似于文件的对象支持文件对象的一些方法,如支持read或write,或者两者都支持。 urlopen(参见第14章)返回的对象就是典型的类似于文件的对象,它们支持方法read和readline,但不支持方法write和isatty。

在第10章讨论模块sys的一节中,提到了三个标准流。这些流都是类似于文件的对象,你可将学到的有关文件的知识用于它们。

一个标准数据输入源是sys.stdin。当程序从标准输入读取时,你可通过输入来提供文本,也可使用管道将标准输入关联到其他程序的标准输出,这将在11.2.2节介绍。

你提供给print的文本出现在sys.stdout中,向input提供的提示信息也出现在这里。写入到sys.stdout的数据通常出现在屏幕上,但可使用管道将其重定向到另一个程序的标准输入。

错误消息(如栈跟踪)被写入到sys.stderr,但与写入到sys.stdout的内容一样,可对其进行重定向。

11.2.1 读取和写入

文件最重要的功能是提供和接收数据。如果有一个名为f的类似于文件的对象,可使用f.write来写入数据,还可使用f.read来读取数据。与Python的其他大多数功能一样,在哪些东西可用作数据方面,也存在一定的灵活性,但在文本和二进制模式下,基本上分别将str和bytes类用作数据。

每当调用f.write(string)时,你提供的字符串都将写入到文件中既有内容的后面。

>>> f = open('somefile.txt', 'w')

>>> f.write('Hello, ')

7

>>> f.write('World!')

6

>>> f.close()

请注意,使用完文件后,我调用了方法close,这将在11.2.4节详细介绍。读取也一样简单,只需告诉流你要读取多少个字符(在二进制模式下是多少字节),如下例所示:

>>> f = open('somefile.txt', 'r')

>>> f.read(4)

'Hell'

>>> f.read()

'o, World!'

首先,指定了要读取多少(4)个字符。接下来,读取了文件中余下的全部内容(不指定要读取多少个字符)。请注意,调用open时,原本可以不指定模式,因为其默认值就是'r'。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190127G05NHL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券