七、文件与数据格式化

目录

前言

7.1 文件概述

文件标识

文件类型(文本文件、二进制文件)

标准文件

7.2 文件的基础操作(打开、关闭、读写)

打开文件(open())

关闭文件(close()与with语句)

close()方法:

with()方法

读取文件(read()、readline()、readlines())

read()

readline()

readlines()

写入文件(write()、writelines(line))

write()

writelines(line)

文件的定位读写

定义

tell()方法

seek()方法

7.3 文件与目录管理

管理文件

7.4 数据维度与数据格式

7.4.1维度的数据分类

7.4.2一二维数据的存储与读写

1.数据存储

2.数据读取

7.4.3多维数据的格式化

json模块

对象与json转化的对照表

总结



前言

  1. 了解 计算机中文件的类型、数据维度
  2. 掌握 文件的基本操作
  3. 掌握 常见的数据格式
  4. 熟练 管理文件与目录

7.1 文件概述

文件标识

  1. 意义:找到计算机中唯一确定的文件

  2. 组成:文件路径、文件名主干、文件扩展名

  3. 操作系统以文件为单位对数据进行管理。

文件类型(文本文件、二进制文件)

  1. 文本文件:专门存储文本字符数据。
  2. 二进制文件:不能直接使用文字处理程序正常读写,必须先了解其结构和序列化规则,再设计正确的反序列化规则,才能正确获取文件信息。

        划分:基于数据逻辑存储结构而非物理存储结构,计算机中的数据在物理层面都以二进制形式存储。

标准文件

在解释器中导入sys模块后,便可对标准文件进行操作。

stdin(标准输入文件)

stdout(标准输出文件)

stderr(标准错误文件)

7.2 文件的基础操作(打开、关闭、读写)

打开文件(open())

打开模式名称描述
r/rb只读以只读的形式打开文本文件/二进制文件,若文件不存在或无法找到,文件打开失败
w/wb只写以只写的形式打开文本文件/二进制文件,若文件已存在,则重写文件,否则创建新文件
a/ab追加以只写的形式打开文本文件/二进制文件,只允许在该文件末尾追加数据,若文件不存在,则创建新文件
r+/rb+读取(更新)以读/写的形式打开文本文件/二进制文件,若文件不存在,文件打开失败
w+/wb+写入(更新)以读/写的形式打开文本文件/二进制文件,若文件已存在,则重写文件
a+/ab+追加(更新)以读/写的形式打开文本/二进制文件,只允许在文件末尾添加数据,若文件不存在,则创建新文件

关闭文件(close()与with语句)

  • close()方法:

                文件对象的内置方法。

                file.close()

  • with()方法

                可预定义清理操作,以实现文件的自动关闭。

                with open('a.txt') as f:

                                pass

读取文件(read()、readline()、readlines())

read()

定义从指定文件中读取指定字节的数据。

格式:read(n=-1)

readline()

定义指定文件中读取一行数据。

格式:格式:readline()

readlines()

定义:一次读取文件中的所有数据,若读取成功,该方法会返回一个列表,文件中的每一行对应列表中的一个元素。

格式:readlines(hint=-1)

写入文件(write()、writelines(line))

write()

定义:可以将指定字符串写入文件

格式:write(data)

writelines(line)

定义:参数lines表示要写入文件中的数据,该参数可以是一个字符串或者字符串列表。 若写入文件的数据在文件中需要换行,需要显式指定换行符

格式:writelines(lines)

文件的定位读写

定义

  1. 在文件的一次打开与关闭之间进行的读写操作是连续的,程序总是从上次读写的位置继续向下进行读写操作。
  2. 每个文件对象都有一个称为“文件读写位置”的属性,该属性会记录当前读写的位置。
  3. 文件读写位置默认为0,即在文件首部。

tell()方法

定义:用于获取文件当前的读写位置

with open('file.txt') as f:    

print(f.tell())                 # 获取文件读写位置    

print(f.read(5))            # 利用read()方法移动文件读写位置    

print(f.tell())                 # 再次获取文件读写位置

seek()方法

定义:可控制文件的读写位置,实现文件的随机读写。

格式:seek(offset, from)

注释:

        offset:表示偏移量,即读写位置需要移动的字节数。

        from:用于指定文件的读写位置,该参数的取值为0、1、2(0:表示文件开头。1:表示

使用当前读写位置。2:表示文件末尾。)

with open('file.txt') as f:                                                           

print(f.tell())                 # 获取文件读写位置    

print(f.read(5))            # 利用read()方法移动文件读写位置

print(f.tell())         ​​​​​​​       # 再次获取文件读写位置

7.3 文件与目录管理

管理文件

删除文件——os.remove(文件名)

文件重命名——os.rename(原文件名,新文件名)

创建/删除目录——os.mkdir(目录名)/os.rmdir(目录名)

获取当前目录——os.getcwd()

更改默认目录——os.chdir(路径名)

获取目录列表——os.listdir(目录/路径)

7.4 数据维度与数据格式

  1. 维度:从广义上讲,维度是与事物“有联系”的概念的数量,根据“有联系”的概念的数量,事物可分为不同维度。

7.4.1维度的数据分类

定义:一维数据、二维数据和多维数据。

一维数据:一维列表 、一维元组、 集合

二维数据:矩阵、 二维数组、 二维列表、 二维元组

三维数据:字典

7.4.2一二维数据的存储与读写

1.数据存储

        二维数据可视为多条一维数据的集合,当二维数据只有一个元素时,这个二维数据就是一维数据。CSV(Commae-Separeted Values,逗号分隔值)是国际上通用的一二维数据存储格式。

CSV格式规范:

        以纯文本形式存储表格数据

        文件的每一行对应表格中的一条数据记录

        每条记录由一个或多个字段组成

        字段之间使用逗号(英文、半角)分隔

2.数据读取

        Windows平台中CSV文件的后缀名为.csv,可通过Office Excel或记事本打开,Python在程序中读取.csv文件后会以二维列表形式存储其中内容

7.4.3多维数据的格式化

        三维及以上的多维数据统一采用键值对的形式进行格式化。

json模块

函数功能
dumps()对Python对象进行转码,将其转化为JSON字符串
loads()将JSON字符串解析为Python对象

对象与json转化的对照表

Python对象JSON数据
dictobject
list,tuplearray
str,unicodestring
int,long,floatnumber
Truetrue
Falsefalse
Nonenull

总结

本章主要介绍了文件与数据格式化相关的知识,包括计算机中文件的定义、文件的基本操作、文件与目录管理、数据维度与数据格式化。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值