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

【知识点】第7章:文件和数据格式化

文章目录

  • 知识点整理
    • 文件概述
    • 文件的打开和关闭
    • 文件的读操作
    • 文件的写操作
  • 练习题
    • 填空题
    • 选择题​​

知识点整理

文件概述

文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容。概念上,文件是数据的集合和抽象,类似地,函数是程序的集合和抽象。用文件形式组织和表达数据更有效也更为灵活。文件包括两种类型:文本文件和二进制文件

  • 文本文件一般由单一特定编码的字符组成,如UTF-8编码,内容容易统一展示和阅读。大部分文本文件都可以通过文本编辑软件或文字处理软件创建、修改和阅读。由于文本文件存在编码,因此,它也可以被看作是存储在磁盘上的长字符串,例如一个txt格式的文本文件。
  • 二进制文件直接由比特0和比特1组成,没有统一字符编码,文件内部数据的组织格式与文件用途有关。二进制是信息按照非字符但特定格式形成的文件,例如,png格式的图片文件、avi格式的视频文件。二进制文件由于没有统一字符编码,只能当作字节流,而不能看作是字符串。

二进制文件和文本文件最主要的区别在于是否有统一的字符编码。无论文件是创建为文本文件还是二进制文件,都可以用“文本文件方式”和“二进制文件方式”打开,但打开后的操作不同。

文件的打开和关闭

Python对文本文件和二进制文件采用统一的操作步骤,即 “打开一操作一关闭”

Python通过解释器内置的 open() 函数打开一个文件,并实现该文件与一个程序变量的关联。open()函数有两个参数:文件名和打开模式。文件名可以是文件的实际名字,也可以是包含完整路径的名字。打开模式用于控制使用何种方式打开文件,open()函数提供 7 种基本的打开模式。

在这里插入图片描述

在这里插入图片描述

上述打开模式中,“r”、“w”、“x”、“a"可以和"b”、“t”、"+"组合使用,形成既表达读写又表达文件模式的方式。

文件使用结束后要用close()方法关闭,释放文件的使用授权,该方法的使用方式如下:

在这里插入图片描述

文件的读操作

  • 当文件以文本文件方式打开时,读写按照字符串方式,采用计算机使用的编码或指定编码。
  • 当文件以二进制文件方式打开时,读写按照字节流方式。

在这里插入图片描述

例题:文本文件逐行打印。

用户输入文件路径,以文本文件方式读入文件内容并逐行打印。

在这里插入图片描述

程序首先提示用户输入一个文件名,然后打开文件并赋值给文件对象变量fo。文件的全部内容通过fo.readlines()方法读入到一个列表中,列表的每个元素是文件一行的内容,然后通过for-in方式遍历列表,处理每行内容。

文件的写操作

Python提供3个与文件内容写入有关的方法。
在这里插入图片描述


练习题

填空题

  1. 文件包括两种类型:______ 和 _______。(文本文件,二进制文件)

选择题​​

1.​​Python中用于打开文件的内置函数是?​​
A. fopen
B. open
C. file_open
D. read_file
​​答案:B​​
​​解析​​:Python使用open()函数打开文件。
​​
2.以只读方式打开文件的模式是?​​
A. ‘w’
B. ‘r’
C. ‘a’
D. ‘rb’
​​答案:B​​
​​解析​​:'r’是默认的只读模式。

3.​​以下哪个方法用于写入文件内容?​​
A. read()
B. write()
C. readline()
D. readlines()
​​答案:B​​
​​解析​​:write()是写入方法。

http://www.lryc.cn/news/2401388.html

相关文章:

  • NetSuite Bundle - Dashboard Refresh
  • AI+3D 视觉重塑塑料袋拆垛新范式:迁移科技解锁工业自动化新高度
  • 智慧赋能:移动充电桩的能源供给革命与便捷服务升级
  • 【项目实践】SMBMS(Javaweb版)(三)登出、注册、注销、修改
  • 斐波那契数列------矩阵幂法
  • 【Go语言基础【四】】局部变量、全局变量、形式参数
  • DeepSeek 赋能车路协同:智能交通的破局与重构
  • RabbitMQ 的异步化、解耦和流量削峰三大核心机制
  • Ubuntu 25.10 将默认使用 sudo-rs
  • Maven​​ 和 ​​Gradle​​ 依赖管理的详细说明及示例,涵盖核心概念、配置方法、常见问题解决和工具对比。
  • 【Web应用】若依框架:基础篇21二次开发-页面调整
  • 【 java 基础知识 第一篇 】
  • CVE-2020-17518源码分析与漏洞复现(Flink 路径遍历)
  • Excel表格批量下载 CyberWin Excel Doenlaoder 智能编程-——玄武芯辰
  • 可编辑PPT | 基于大数据中台新能源智能汽车应用解决方案汽车大数据分析与应用解决方案
  • 【统计方法】基础分类器: logistic, knn, svm, lda
  • AtomicInteger原子变量和例题
  • simulink有无现成模块可以实现将三个分开的输入合并为一个[1*3]的行向量输出?
  • k8s集群安装坑点汇总
  • Selenium 和playwright 使用场景优缺点对比
  • 从 Stdio 到 HTTP SSE,在 APIPark 托管 MCP Server
  • Python训练营打卡Day43
  • Mysql锁及其分类
  • RabbitMQ实用技巧
  • Postgresql源码(146)二进制文件格式分析
  • spring ai mcp 和现有业务逻辑如何结合,现有项目用的是spring4.3.7
  • 【设计模式-4.11】行为型——解释器模式
  • 【已解决】MACOS M4 芯片使用 Docker Desktop 工具安装 MICROSOFT SQL SERVER
  • Quipus系统的视频知识库的构建原理及使用
  • web3-去中心化金融深度剖析:DEX、AMM及兑换交易传播如何改变世界