Pthon文件操作
读取文件:
- 读取整个文件:(文件路径使用反斜杠\)
with open("didits.txt") as file: #打开文件,默认是读模式,返回文件对象file
contents = file.read() #通过文件对象调用read方法读取内容
print(contents.rstrip()) #输出内容,read读到最后会返回空字符串,删除空字符串
输出:
3.1415
9265
3589
- 逐行读取文件:
#不能使用.read()方法,因为再加for循环会一个个输出
with open("didits.txt") as file: #打开文件,默认是读模式,返回文件对象file
for line in file: #对文件对象循环读取,输出
print(line.rstrip())
输出:
3.1415
9265
3589
- 文件转化为列表,每一行为一列表元素:
with open("didits.txt") as file:
lines = file.readlines() #readlines返回包含文件内容的列表
print(lines)
for line in lines: #输出列表内容
print(line.rstrip())
输出:
['3.1415\n', ' 9265\n', ' 3589']
3.1415
9265
3589
注意: 读取文本文件时,Python将所有文件解读为字符串,如果是用作数字,可使用 int 或者 float 转化为数字
- 使用文件:(字符串也可以切片)
with open("didits.txt") as file:
lines = file.readlines() #readlines返回包含文件内容的列表
pi = ""
for line in lines: #拼接成字符串
pi += line.strip()
print(pi)
print("%s %s" %(pi[:6], pi[-2:])) 字符串也支持切片
输出:
3.141592653589
3.1415 89
写入文件:
文件操作表示:
操作 | 表示 | 说明 |
---|---|---|
读取 | ‘r’ | |
写入 | ‘w’ | 会清空原内容 |
附加模式 | ‘a’ | 不会清空原内容 |
读+写 | ‘r+’ |
注意:
- Python只能将字符串写入文件,可以使用 str 将数值转换为字符串
- 读写时,可以设置编码格式,Pycharm:utf-8,Excel:ANSI
with open("introduce.txt", "w", encoding="utf-8") as file:
file.write("我是大一学生\n")
file.write("我来自曲阜师范大学")
输出:
会创建一个名为“introduce.txt”的文件,里面内容为:
我是大一学生
我来自曲阜师范大学