python打开文件写入内容_python-11 文件的打开和写入

# 11 章

# 11.1 打开文件 open

# f = open('somefile.txt', 'r+')

# print(f.read())

# print(f.write('564'))

# f.close()

# 文件模式

'''

函数open的参数mode的最常见取值

'r' 读取模式(默认值)

'w' 写入模式

'x' 独占写入模式

'a' 附加模式

'b' 二进制模式(与其他模式结合使用)

't' 文本模式(默认值,与其他模式结合使用)

'+' 读写模式(与其他模式结合使用

'''

# 11.2 文件的基本方法

'''

三个标准流

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

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

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

'''

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

print(f.write('Hello, world!'))

print(f.seek(5))

print(f.read(3))

print(f.tell())

f.close()

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

# print(f.read(2))

# print(f.read(2))

# print(f.tell())

# f.close()

# 11.2.2 使用管道重定向输出

# cat somefile.txt | python somescript.py | sort

# cat somefile.txt:将文件somefile.txt的内容写入到标准输出(sys.stdout)。

# python somescript.py:执行Python脚本somescript。这个脚本从其标准输入中读取,并将结果写入到标准输出。

# sort:读取标准输入(sys.stdin)中的所有文本,将各行按字母顺序排序,并将结果写入到标准输出。

# 11.2.3 读取和写入行 writelines 和 readlines

# 11.2.4 关闭文件 close flush(缓存)

# 11.3 迭代文件内容

# 11.3.1 每次一个字符(或字节)

#在while循环中使用方法read。

# 11.3.2 每次一行 readline

# 11.3.3 读取所有内容

# 11.3.4 使用fileinput 实现延迟行迭代

#说它延迟是因为它只读取实际需要的文本部分。

# 11.3.5 文件迭代器

# import sys

# for line in sys.stdin:

# process(line)

# 11.4 小结

# 1、类似于文件的对象:类似于文件的对象是支持read和readline(可能还有write和writelines)等方法的对象。

# 2、打开和关闭文件:要打开文件,可使用函数open,并向它提供一个文件名。如果要确保即便发生错误时文件也将被关闭,可使用with语句。

# 3、模式和文件类型:打开文件时,还可指定模式,如'r'(读取模式)或'w'(写入模式)。通过在模式后面加上'b',可将文件作为二进制文件打开,

# 并关闭Unicode编码和换行符替换。

# 4、标准流:三个标准流(模块sys中的stdin、stdout和stderr)都是类似于文件的对象,它们实现了UNIX标准I/O机制(Windows也提供了这种机制)。

# 5、读取和写入:要从文件或类似于文件的对象中读取,可使用方法read;要执行写入操作,可使用方法write。

# 6、读取和写入行:要从文件中读取行,可使用readline和readlines;要写入行,可使用writelines。

# 7、迭代文件内容:迭代文件内容的方法很多,其中最常见的是迭代文本文件中的行,这可

# 通过简单地对文件本身进行迭代来做到。还有其他与较旧Python版本兼容的方法,如使用readlines。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值