分享Python知识的第十天

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分享Python知识的第十天相关的知识,希望对你有一定的参考价值。

Python文件操作

1.常规格式

f = open(file="文件所在路径/文件名",mode="操作模式",encoding="选择的编码")
# 例如
f = open(file="D:/Python_pro/s_27/day05/test.py",mode="r",encoding="utf-8")
# 简写
f = open("D:/Python_pro/s_27/day05/test.py","r",encoding="utf-8")
注意:文件路径会出现转义现象
可以修改为
f = open("D:\Python_pro\s_27/day05\test.py","r",encoding="utf-8")
或者
f = open(r"D:Python_pros_27/day05	est.py","r",encoding="utf-8")
建议使用
f = open("D:/Python_pro/s_27/day05/test.py","r",encoding="utf-8")

2.文件操作的三部曲

  1. 打开文件
  2. 对文件进行操作
  3. 关闭文件
# 三步格式
f = open(file="文件所在路径/文件名",mode="操作模式",encoding="选择的编码")
f.read() 或 f.readline() 或 f.readlines() 或 f.write() 或 f.seek() 或 f.tell()
f.close()

自己有时候会忘记关闭文件,所以想要让其自动关闭因此可以写成如下的格式

# 自动关闭文件
可以同时打开多个文件
with open("ddd.txt","r",encoding="utf-8")as f,    open("aaa.txt","r",encoding="utf-8")as f1:
    print(f.read())
    print(f1.read())

3.文件的操作模式与方法

# 读
mode = "r"  # 只读
mode = "r+" # 读写
mode = "rb" # 读字节
f.read() #一次性读全部,容易造成内存溢出
f.readline() #一行一行的读
f.readlines() #一行一行的读并把结果加入列表
---------------------------------------------
# 写
mode = "w" # 清空写
mode = "w+" # 写读
mode = "a" # 追加写
mode = "a+" # 追加写读
mode = "wb"或"ab" #写字节 
f.write() # 将字符串写入文件
---------------------------------------------
# 其他操作
f.seek()  #移动光标
f.seek(0,0)    # 将光标移动文件开头
f.seek(0,1)    # 将光标移动到当前位置
f.seek(0,2)    # 将光标移动文件末尾
f.seek(3)        # 按照字节移动
# 查看光标位置
f.tell()  # 按照字节查看,返回的是字节

4.文件操作常见错误

1.运行的文件和要打开的文件不是同一个文件夹下   通过路径
2.要打开的文件名和open里的名字不一致
3.使用word,记事本等软件造成的未知错误         不建议使用这种方式创建文件

5.文件内容的修改与备份示例

with open("原文件.txt","r",encoding="utf-8") as f,         open("新建文件.txt","w",encoding="utf-8") as f1:
    for line in f:
        new_i = line.replace("要修改的旧内容","修改的新内容")
        f1.write(new_i)
print("修改完成")
import os
os.rename("原文件.txt", "备份文件.txt")
os.rename("新建文件.txt", "原文件.txt")

以上是关于分享Python知识的第十天的主要内容,如果未能解决你的问题,请参考以下文章

python学习的第十天函数part2

学习Python的第二十天三级菜单高级版

孤荷凌寒自学python第八十天开始写Python的第一个爬虫10

Java学习的第十天:今天没有学什么知识:但是针对mybatis的增删改查,,都能够进行运行:

走入计算机的第四十天(python中sockserver模块)

第十天