文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

【python笔记】第十四节 文件操作

2023-09-03 19:02

关注

💕💕💕 博主昵称:摆烂阳💕💕💕

🥰博主主页跳转链接
👩‍💻博主研究方向:web渗透测试 、python编程
📃 博主寄语:希望本篇文章能给大家带来帮助,有不足的地方,希望友友们给予指导

文件操作


操作文件的步骤:

1. 打开文件
2. 对文件进行(读,写),保存
3. 关闭文件

一、打开

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

file: 指要打开文件的名字 (准确说是路径,可写绝对路径,可写相对路径)

原始字符串:

让字符串不会被转义 ,字符串前面加个r print(r"\n") # 转义符不会再转义了,纯字符

建议:字符串里面存储的是 路径,正则表达式 通通使用原始字符串

路径
1、绝对路径

不易出错,唯一性

2、相对路径

… 表示上一级
/ 下一级

pycharm绝对路径快捷键:ctrl + shift + c

二、关闭

fileName = r"demo.txt"demo = open(fileName)content = demo.read()  # 读取文件中的内容,它会将内容全部保存为一个字符串返回demo.close()  # 关闭文件print(demo.read())

python提供了一个语法,可以自动帮忙关闭,再也不用手动了

with open …as 语句

with 会自动将文件关闭 自动执行f.close()

with open(fileName) as f:
content = f.read()
print(content)

三、读取

read() :读取全部内容
readline() : 读取一行内容
readlines() :读取每行行内容,放进列表

读取文件分为两种
1.纯文本文件(使用utf-8等编码编写的文本文件)
常见中文编码:utf-8,gbk,gb2312
2.二进制文件(图片、视频)

# 按行读取with open(fileName,encoding="utf-8") as f:    print(f.readline(),end="")    print(f.readline(),end="")    print(f.readline(),end="")    print(f.readline())

四、写入

r:只读 (不传,则是只读)

w:可写 ,表示覆盖,如果文件不存在会创建文件

a:可写 ,表示追加,如果文件不存在会创建文件

fileName = r"demo4.txt"# with 会自动将文件关闭   f.close()# 指定w模式,表示可写with open(fileName, "w", encoding="utf-8") as f:    f.write("aa\n")  # 括号内需要传递一个字符串    f.write("aa\n")  # 括号内需要传递一个字符串    f.write("aa\n")  # 括号内需要传递一个字符串    f.write("aa")  # 括号内需要传递一个字符串# a 表示追加,不会清空以前的内容with open(fileName, "a", encoding="utf-8") as f:    f.write("aa\n")  # 括号内需要传递一个字符串    f.write("aa\n")  # 括号内需要传递一个字符串    f.write("aa\n")  # 括号内需要传递一个字符串    f.write("aa\n")  # 括号内需要传递一个字符串        

+:为操作符增加功能
r+:可读也可写
w+:可写也可读
a+:可写也可读

五、二进制文件

音乐,图片 二进制文件读取模式参数:    t 读取文本文件(默认方式)    b 读取二进制文件fileName = r"周杰伦 - 晴天.mp3"with open(fileName,"rb") as f:    content = f.read()    new_path = "qq.mp3"    with open(new_path,"ab") as f2:        # 将读取的数据写入到新的对象中        f2.write(content)                 

本章小结

本文是本人以前笔记,博主主页跳转链接
如果有哪里不对的话欢迎各位大佬指出问题,本人也是初学python,希望可以和各位朋友一起学习进步。

点击跳转到博主python专栏:
如果有喜欢web安全的朋友,请在web渗透专栏中进行查看
点击跳转到博主web渗透专栏

来源地址:https://blog.csdn.net/qinshuoyang1/article/details/126721324

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯