python文件读取与输出_Python入门 文件读取与写入

Python中的文件是对象。

通过open() 打开一个文件,获取一个文件对象,然后对文件进行读写操作,如下示例。

# 读写打开一个UTF-8编码格式文件,如果文件不存在则创建

file= open(r'F:\1.txt', mode='w+', encoding='UTF-8')

# open()打开一个文件,返回一个文件对象

file.write('Hello!\nWoodman') # 写入文件

file.seek(0) # 光标移动到文件开头

file_content = file.read() # 读取整个文件内容

print(file_content)

file.close() # 关闭文件

一、open()打开文件获取文件对象

open() 函数参数说明

open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)

open()函数用于打开一个文件,创建一个 file 对象,改对象的相关的方法才可以被调用对文件进行读写。

file文件的路径,需要带上文件名包括文件后缀(c:\\1.txt)

mode打开的方式(r,w,a,x,b,t,r+,w+,a+,U)

buffering缓冲的buffering大小, 0,就不会有寄存。1,寄存行。大于 1 的整数,寄存区的缓冲大小。负值,寄存区的缓冲大小为系统默认。

encoding文件的编码格式(utf-8,GBK等)

常用文件的打开模式(完整列表见附件)

r 以只读方式打开文件。文件的指针会放在文件的开头。

w 以写入方式打开文件。文件存在覆盖文件,文件不存在创建一个新文件。

a 以追加方式打开文件。如果文件已存在,文件指针放在文件末尾。如果文件不存在,创建新文件并可写入。

r+ 打开一个文件用于读写。文件指针会放在文件的开头

w+ 打开一个文件用于读写。文件存在覆盖文件,文件不存在创建一个新文件。

a+ 打开一个文件用于读写。如果文件已存在,文件指针放在文件末尾。如果文件不存在,创建新文件并可写入。

记忆方法:记住r读,w写,a追加,每个模式后加入+号就变成可读写。

file= open(r'F:\1.txt', mode='w', encoding='UTF-8')

二、文件的读取与写入

文件读取:

file.read([size]):读取文件(读取size个字符,默认读取全部)

file.readline()):读取一行

file.readlines():读取完整的文件,返回每一行所组成的列表

本地目录新建一个文件woodman.txt,文件内容如图:

示例:

file = open('woodman.txt', encoding='utf-8')

print(file.read(18)) # 读取18个字符,注意中文字符一个字为1个字符

print('-------')

print(file.read()) # 读取剩下的所有的文本,光标位置在上次读取结束的位置

print('-------')

file.seek(0,0) # 移动光标到文件开头

print(file.readline()) # 读取一行

print('-------')

file.seek(0,0) # 移动光标到文件开头

print(file.readlines()) # 读取文件,返回每一行所组成的列表

file.close() # 关闭文件

输出结果:

Hello, woodman.

你好

-------

!木头人。

朋友们,大家好。

-------

Hello, woodman.

-------

['Hello, woodman.\n', '你好!木头人。\n', '朋友们,大家好。']

注意:文件读取后光标停止在读取结束的位置,file.seek(size) 将光标指针移动到文件的size位置。

文件写入:

file.write(str):将字符串写入文件

file.writelines(lines):将多行文本写入文件中,lines为字符串组成的列表或元组

示例:

file = open('write_woodman.txt', mode='w', encoding='utf-8')

file.write('hello,\nwoodman') # 写入文件,\n 转义字符换行

file.write('\n------------------\n')

str1 = '''你好!我是木头人。'''

file.write(str1) # str1文本块写入文件,会安装文本块的格式

file.write('\n------------------\n')

list1 = ['Python', '是一门解释型语言\n', 'python非常简单']

file.writelines(list1) # 写入列表数据

file.close() # 关闭文件

运行程序后文件内容:

hello,

woodman

------------------

你好!

我是木头人。

------------------

Python是一门解释型语言

python非常简单

文件对象的其他方法:

file.seek(偏移量,[起始位置]): 用来移动文件指针.

偏移量:单位:比特,可正可负

起始位置:0-文件头部,默认值;1-当前位置;2-文件结尾

file.tell():返回一个整数,表示当前文件指针的位置(就是到文件头的比特数)

file.close(): 关闭文件

附件:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值