当前位置: 首页 > news >正文

Python第七章01:文件的读取操作

# 文件的读取操作
# 文件可以分为: 文本文件、视频文件、音频文件、图像文件、可执行文件等多种类别
# 文件操作一般: 打开、关闭、读取、写入

# 在pyton函数中,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件,语法如下:
"""
open(name,mode,encoding)
name: 要打开的目标文件的字符串(可以包含文件所在的具体路径)
mode:设置打开文件的模式(访问模式):只读、写入、追加等
encoding:编码格式(推荐使用UTF-8)


mode 模式:
r    只读打开文件。文件的指针会放在文件的开头,这是默认模式
w    打开文件用于写入。如果该文件已存在则打开文件夹,并从头开始编辑,原有内容会被删除。如果该文件不存在,创建新文件。
a    打开一个文件用于追加。如果该文件已经存在,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。



文件对象 = open("file","mode",encoding="编码类型")          打开文件获得文件对象
            文件对象.read(num)                            读取指定长度num字节,不指定num,则读取全部内容
            文件对象.readlines()                          读取全部行内容,封装得到一个列表
            文件对象.readline()                           读取一行内容
            for x in 文件对象                             for循环文件行,一次循环得到一行内容
            文件对象.close()                              关闭文件对象,解除文件占用
            with open() as f                            通过with open 语法打开文件,完成操作后,可以自动关闭

"""

# 打开文件
f=open("D:/text.txt","r",encoding="UTF-8")
print(type(f))

# 读取文件 .read(num)  num表示读取num个字节,不写num表示读取所有数据
# print(f"读取文件text中10个字节的内容是:{f.read(12)}")
# print(f"读取文件text中全部的内容是:{f.read()}")  # 连续2次读取文件,会接着上一次读取内容进行读取
print("---------------------------------------------------------")

# 读取文件.readlines()   读取文件的全部行 ,封装到列表中
# lines = f.readlines()
# print(f"linse对象的类型是:{type(lines)}")
# print(f"linse对象的内容是:{lines}")   # 前面读取过该文件,后续接上次读取,上次已读完,这次就读不了,所以遥注释上面的读取代码

# 读取文件.readline()   一次读取一行内容
# line1 = f.readline()
# line2 = f.readline()
# line3 = f.readline()
# line4 = f.readline()
# print(f"读取的第一行内容是:{line1}")
# print(f"读取的第一行内容是:{line2}")
# print(f"读取的第一行内容是:{line3}")
# print(f"读取的第一行内容是:{line4}")

# for循环读取文件行
# for line in f:     # 每次读取要注释掉前面的读取代码
#     print(f"每一行内容是:{line}")

# 关闭文件对象.close(), 防止文件一致被程序长时间占用,无法进行别的操作
f.close()

# with open 语法。 完成操作后,自动关闭文件
with open("D:/text.txt","r",encoding="UTF-8") as f :
    for line in f:
        print(f"每一行的内容是:{line}")

运行结果:

相关文章:

  • AI 强化学习
  • Shell教程
  • 【质量管理】纠正、纠正措施和预防的区别与解决问题的四重境界
  • 移动端六大语言速记:第2部分 - 控制结构
  • SpringBoot实现RBAC权限校验模型
  • 拓展知识六:MetInfo6.0.0目录遍历漏洞原理分析
  • 二分算法到红蓝染色
  • Mybatis的resultMap标签介绍
  • Java面试黄金宝典23
  • 鸿蒙ArkTS开发:微信/系统来电通话监听功能实现
  • pycharm-qt56pyside-常用控件
  • Dubbo 框架内置的并发控制策略
  • Maven:Java项目构建与依赖管理工具
  • 解释Node.js,Node.js环境
  • 数据结构每日一题day7(顺序表)★★★★★
  • WEB安全--RCE--RCE的绕过
  • 网络深处的守门人
  • 马达加斯加企鹅字幕
  • 网站安全专栏-------DDOS常见的解决办法和防范措施
  • Vue 3 模板引用(Template Refs)详解与实战示例
  • 网站做好怎么推广/软文新闻发稿平台
  • 哪个网站可以查蛋白互做/腾讯云服务器
  • 遵义做网站建设哪家公司好/百度seo学院
  • 怎么建医疗网站/找营销推广团队
  • 域名防红直连/seo推广公司价格
  • 怎么对网站链接做拆解/连云港seo公司