今天是Andy学Python的第53 天哦!
大家好,我是Andy。
今天学习读写文件,主要适用于纯文本文件。
纯文本文件只包含基本文本字符,不包含字体、大小和颜色信息。如扩展名为txt或py的文件,都是纯文本文件。
在Python中,读写文件有3个步骤:
1. 调用open()函数,返回一个File对象。
2. 调用File对象的read()或write()方法。
3. 调用File对象的close()方法,关闭该文件。
开始之前,先建立一个1.txt,输入以下内容:
Hello, World!
My name is Andy.
哈哈哈
我是京京爸爸。
01.
打开文件
open()函数返回一个 File 对象。
02.
读取文件内容
使用 File 对象的 read()方法,返回文件内容的字符串值 。
f = open("C:\\Users\\Administrator\\111\\1.txt")
f_content = f.read()
f_content
输出结果:
'Hello, World!\nMy name is Andy.\n哈哈哈\n我是京京爸爸。'
如果使用print()输出文件内容,结果是这样的:
f = open("C:\\Users\\Administrator\\111\\1.txt")
f_content = f.read()
print(f_content)
输出结果:
Hello, World!
My name is Andy.
哈哈哈
我是京京爸爸。
03.
写入文件
将'w'作为第二个参数传递给 open(),以写模式打开该文件。写模式将覆写原有的文件,类似用一个新值覆盖一个变量的旧值。
将'a'作为第二个参数传递给 open(),以追加模式打开该文件。追加模式将在已有文件的末尾添加文本。类似向一个变量列表末尾追加内容,而不是替代旧值。
如果传递给 open()的文件名不存在,写模式和追加模式都会创建一个新的空文件。在读取或写入文件后,调用 close()方法,然后才能再次打开该文件。
f = open("C:\\Users\\Administrator\\111\\1.txt", "w")
f_content = f.write("I am in Changsha.")
f.close()
f = open("C:\\Users\\Administrator\\111\\1.txt", "a")
f.write("I teach myself Python.")
f.close()
f = open("C:\\Users\\Administrator\\111\\1.txt")
f_content = f.read()
f.close
print(f_content)
输出结果:
I am in Changsha.I teach myself Python.
打开原1.txt文本文件,内容已更改。
# 利用写模式与追加模式打开不存在的文件,创建文件并写入内容
f = open("C:\\Users\\Administrator\\111\\5.txt", "w")
f_content = f.write("我要自学Python")
f.close()
f = open("C:\\Users\\Administrator\\111\\5.txt", "a")
f.write("\n我学习Python快两个月了")
f.close()
f = open("C:\\Users\\Administrator\\111\\5.txt")
f_content = f.read()
f.close
print(f_content)
输出结果:
我要自学Python
我学习Python快两个月了
再打开文件夹,多了一个5.txt文件
04.
open() 访问模式汇总
# r: 只读(默认), 文件必须存在
# w: 只写, 不可读; 不存在则创建,存在则删除文件内容
# a: 追加, 可读, 不存在则创建,存在则追加内容
# +: 表示可以同时读写某个文件
# r+: 可读写文件,可追加
# w+:先写再读
05.
关闭文件
文件使用完毕后必须关闭,不然会报错。
使用close()方法关闭文件。
每次文件操作都要使用close()太麻烦,在Python中有一种简便方法:
with open("C:\\Users\\Administrator\\111\\1.txt",'r') as f:
print(f.read())
输出结果:
I am in Changsha.I teach myself Python.
51Day Day up!
向上向善,日进一步!
每天学习,努力成长!
定个小目标,开启成长的旅程,遇见更好的自己。
这是我们和自己的约定,许诺自己不负韶华。
路虽远,行则将至;事虽难,做则必成。
成长的最好时机,就是当下。
网友评论