Python 文件操作

文件操作步骤

1. 打开文件

file = open("n.txt","w",encoding="utf-8")
# 绝对路径好理解,我们以Girl.py来举例子。这就是它的绝对路径:"E:/Python/Lib/site_packages/Girl.py"
# 相对路径,就是相对于Girl.py的路径。 例子:
# "Boy1.py",对应: "E:/Python/Lib/site_packages/Boy1.py" 跟Girl.py在同一个文件夹里。
# "set/Boy2.py",对应: "E:/Python/Lib/site_packages/set/Boy2.py" 跟Girl.py在同一个文件夹里的set文件夹里的文件。
# "./Boy3.py",对应:"E:/Python/Lib/site_packages/Boy3.py" 跟Girl.py在同一个文件夹里。
# "../Boy4.py",对应: "E:/Python/Lib/Boy4.py"Girl.py上一级文件夹里的文件。
# 也就是说除了第四个是上一级文件夹,前三个都是当前文件夹。
# 操作模式,分为 r(read)、w(write)、a(append) 详细看步骤5

2. 读取内容

# print("readline:::", file.readline()) #单行读取
# print("readlines:::", file.readlines()) # 所有行全部读取,将数据转为一个list
# 第一种遍历文件的方式,全部读取并且转为list
# for line in file.readlines():
# print("line::", line.strip())

# 第二种遍历文件的方式,逐行读取进行操作,不会提前加载到内存中,可以解决性能问题
# for line in file:
# print("line::", line.strip())
3. 写入数据
file1 = open("a.txt", "w", encoding="utf-8")
data = "miaMaMa\n"
file1.write(data)
l1 = ["xiaohei", "xiaobai", "xiaohong", "xiaoming"]
file1.writelines(l1)   # 所有元素写入同一行
for l in l1:   #一行一个元素写入
file1.write(l)
file1.write("\n")
file1.close()

4.  关闭文件

file.close()


5.  操作模式

# r+ 读写,不能创建文件,只能对存在的文件从光标位置开始覆写,不会全部清除。
# r 只读
file2 = open("a.txt", 'r+', encoding='UTF-8')
file2.write("overwrite")
point = file2.tell()
print(point)

# w+ 读写,可以创建新文件,全部清除之前内容后写入
# w 只写,可以创建新文件,全部清除之前内容后写入。所有的write操作是先写在内存中,只有结束的时候才会执行进去
file3 = open('www.txt', 'w', encoding='utf-8')
file3.write("new write444")
print(file3.tell())

# a+ 可以读写,可以创建文件,不清除,从末尾追加内容
# a 只写,可以创建文件,不清除,从末尾追加内容
file4 = open('aaa.txt', 'a', encoding='utf-8')
file4.tell()
file4.write('append3234')
file4.read()
6. 常用方法
file.seek(5) #指针跳转指定字节
file.tell()  # 返回指针当前的位置
以上两种方法仅适合读文件模式,不适合写模式
posted @ 2020-12-29 18:32  Mia妈妈加油呀  阅读(110)  评论(0)    收藏  举报