搞定python之六----文件读写

发布于:2025-03-16 ⋅ 阅读:(13) ⋅ 点赞:(0)

本文是《搞定Python》系列文章的第六篇,介绍文件的读写操作。文件读写相对于java要简单的多,板式代码也比较多,最后用with方式打开文件,可以保证文件正常关闭。

1、读文件

一般的文件读写过程:打开、读写、关闭。python文件读取相对于java要简单的多,咱们一步步来,逐步完善。

# python文件读取
# Windows系统有文件扩展名的概念,linux、mac都没有,不影响文件读取

f = open('test.txt')   
print(f.read())
f.close()

此时,要是你的当前目录没有test.txt这个文件,就会报异常,如图:
在这里插入图片描述
此时大家能想到java读取文件时的模板式代码,try…catch…finally。在python其实过程相似,只是写法有点不同。看下面代码:

# python文件读取

f = None      # None就是java中的null
try:
    f = open('test.txt')
    print(f.read())
except FileNotFoundError as e:
    print("文件未找到!", e.filename)
finally:
    if f is not None:     # 判断f不为空时
        f.close()

此时再次执行时就打印:文件未找到! test.txt。异常处理完成了,下面咱们读取已经存在的文件。

注意:test.txt创建到和你这个python代码相同的目录,否则还是读不到。你也可以用绝对路径的方式,比如:c:/a/b/c/test.txt(windows),或者 /Users/a/b/c/test.txt(mac、linux)。文件创建完成后,代码不用改,直接执行代码,再看看:
在这里插入图片描述
再写一个按行读取的代码:

# python文件读取

f = None
try:
    f = open('test.txt', 'r')    # 以只读方式打开
    for line in f.readlines():
        print(line)

except FileNotFoundError as e:
    print("文件未找到!", e.filename)
finally:
    if f is not None:
        f.close()

代码很简单,但是模板式的代码太多,python中也提供了try…resources的方式,咱们改一下:

with open('test.txt', 'r') as f:
    for line in f.readlines():
        print(line)

好了,python读文件就说完了。

2、写文件

有了读文件的基础,写文件就简单多了。直接看代码:

# python写文件

with open("test2.txt", 'a') as f:    # 以追加的方式打开,a代表append
    for i in range(0, 10):
        f.write("第 %s 行,你好。\n" % i)

在这里插入图片描述
好了,就到这里了。
//~~


网站公告

今日签到

点亮在社区的每一天
去签到