Day053|读写文件

2021-04-23  本文已影响0人  龙渊的宝藏

今天是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!

向上向善,日进一步!

每天学习,努力成长!

定个小目标,开启成长的旅程,遇见更好的自己。

这是我们和自己的约定,许诺自己不负韶华。

路虽远,行则将至;事虽难,做则必成。

成长的最好时机,就是当下。

上一篇下一篇

猜你喜欢

热点阅读