这是文章目录

  • 1,前言
  • 2,文件的使用
    • 2.1,文件的类型
      • 2.1.1文件的理解
      • 2.1.2,文本文件与二进制文件
    • 2.2,文件的打开和关闭
    • 2.3,文件的内容读取
    • 2.4,数据文件的写入
  • 一维数据的格式化和处理
    • 数据组织的维度
    • 一维数据的表示
    • 一维数据的存储
    • 一维数据的处理
  • 二维数据的格式化和处理
    • 二维数据的表示
    • CSV数据存储格式
    • 二维数据的存储
  • 总结

1,前言

职场人士都在学Python,说是可以文件和数据,处理Word、xlsx、PDF等等非常方便。学到了就是加分,升职不是梦。当然这一章不会有这部分内容,没学,不会。但是这可能是一个入门,用Python打开文件?修改文件?·····

2,文件的使用

2.1,文件的类型

2.1.1文件的理解

提起类型,必先理解这是什么,文件是啥呢?

  • 文件是数据的抽象和集合
  • 文件是存储在辅助存储器上的数据序列
  • 文件是数据存储的一种形式
  • 文件展现形态:文本文件和二进制文件

打了四行定义,不长不短。说说我的看法叭。把数据看成抽象,多条相同类型的数据就要放进一个文件,此时此刻,文件就像是一个大集合。
成绩表.xlsx里面就是有很多数据。把这些数据都放到成绩表.xlsx里面,因此像个大集合。
Q:什么是辅助存储器?
电脑主机板外的储存器。如硬碟、光碟、随身碟等。就是放盘里。这里应该是指文件夹吧?文件夹也是一种文件。
存储在硬盘里,有顺序的排列着。
好,什么是二进制文件和文本文件

2.1.2,文本文件与二进制文件

放在前面:从文件的名字可以看出他们文件的展示方式不同,看到二进制不就是0和1组成的一大串数字吗?
所有的文件都是以二进制的方式存储。。我好闲记得CPU里面都是二进制来着。
所以文件都采用这两种方式展示,

  • 文本文件

由单一特定编码组成的文件,utf-8
由于存在编码,也被看成是存储着的长字符串
适用于例如:.txt文件、.py文件

-二进制文件
直接由比特0和1组成,没有同意字符编码
一般存在二进制0和1的组织结构,即文件格式
适用于例如:.png文件、.AVI文件

这就是他们的区别,实际上并不难,一个字符串,一0和1

2.2,文件的打开和关闭

以上都是叙述,那么正文现在开始!
文件的操作步骤:打开----操作-----关闭

  1. 文件的打开:
a = open(  ,  )

open打开的意思,
文件的存储状态变为文件的文件的占用状态
这句语句应该是这样滴

<变量名> = open(<文件名>, <打开模式>)

文件名里面包括文件的路径和名称,如果和源文件同一路径可以忽略不计。
打开模式:文本or二进制、读or写
还有其他的打卡方式:

文件的打开方式 描述
“r” 只读模式,默认值,如果文件不存在返回FileNotFoundError
“w” 覆盖写模式,文件不存在则创建,存在则完全覆盖
“x" 创建写模式,文件不存在则创建,存在则返回FileExistsError
“a” 追加写模式,文件不存在则创建,存在则在文件最后最佳内容
“b” 二进制文件模式
“t” 文本文件模式。默认值
“+” 与r/w/x/a一同使用,在原功能基础上增加同时读写功能

覆盖、创建、追加我想都不难理解吧。
例如:

f = open(f.txt, w)
  1. 文件的关闭:
a.close()#<变量名>.close()

close关闭的意思。有打开文件则就有关闭文件,因此open().close()是一对。。

2.3,文件的内容读取

我们先定义一段文本:

打开这段文本的代码

f = open("1.txt","r")
操作方法 描述
.read(size=-1) 读入全部内容,如果给出参数,读入前size长度
>>>s = f.read(5)
linux#size为5
>>>s = f.read()
linux
Python
c
Java
c++#size没有参数在打印全部文本
操作方法 描述
.readline(size=-1) 读入一行内容,如果给出参数,读入该行前size长度
>>>s = f.readline(3)
lin
>>>s = f.readline()
linnx
操作方法 描述
.readlines(hint=-1) 读入文本所有行, 一每行为元素形成列表,如果给出参数,读入前hint行
>>>s = f.readlines(-1)
['linux\n', 'Python\n', 'c\n', 'Java\n', 'c++']

这就是这三个方法,论这三个方法有什么区别,很简单

  • read:用通俗易懂的话说读全文,返回字符串类型
  • ReadLine:读这行,还是字符串类型
  • Readlines:可以看做读全文,每一行为元素形成一个列

提一下遍历文本

  • 全文遍历:简单实用的.read()方法,
  • 逐行遍历:分享一段代码
>>>f = open("1.txt","r")
>>>for line in f.readlines(-1):
>>>    print(line)
linuxPythoncJavac++

为什么会是这样

2.4,数据文件的写入

文件的读取一共说了三个方法,有读取,那么应该有写入,怎么用Python进行写呢,一起看看吧

操作方法 描述
.write(s) 向文件写入一个字符串或字节流
f = open("测试.txt","w")
f.write("人生苦短,我学Pyhon")
f.close()

注意那个“w”,为什么写不进去,为什么写进去是空白的,前者与“w
”有关系,写模式,后者,记得close()

操作方法 描述
.writelines(lines) 将一个元素全为字符串 的列表写入文件
f = open("测试.txt","w")
s = ["中国","法国","美国"]
f.writelines(s)
>>>f.close()
中国法国美国
操作方法 描述
.seek(offset) 改变当前文件操作指针的位置,offset含义如下:0–文件开头;1—当前位置;2----文件结尾

一维数据的格式化和处理

数据组织的维度

从一个数据到一组数据,一个数据表达的含义到一组数据表达一个或多个含义。

  1. 维度:一组数的组织形式
  2. 一维数据:由对等关系的有序或无序数据结构,对应标列表、数组和集合等概念。
  3. 二维数据:由多个一维数据构成,是一维数据的组合形式。表格是典型的二维数据,其中表头是二维数据的一部分。
  4. 多维数据:由一维或二维数据在新维度上扩展形式。
  5. 高维数据:仅利用最基本的 二元关系展示数据间的复杂结果。键值对
    说了这么多,其实我也没明白。
  6. 一维数据类似线性。
    几个同学的成绩:99、89、75、65、88;[“中国”,“法国”,“美国”],可以用集合、数组或者列表定义。就是一维数据。
  7. 二维数据:类似平面。可以说是用 两个点确定一个数据。
    为什么会是表格呢,以成绩单为例,要找出一人的成绩,就需要他的姓名和你要找的哪一科成绩。定位。
  8. 高维数据,立体。对应应该是三点确定一个数据
    数据的操作周期:
    存储<->表示<->操作

一维数据的表示

一维数据现在了解了吗

  1. 是个有序数列,用列表类型。

因此列表类型可以表示一维有序序列
for循环可以对数列进行遍历,从而方便对数据进行处理。

  1. 是个无序数列,用集合类型
    同上也可以for循环遍历。

一维数据的存储

  1. 空格存储
    使用一个或多个空格存储,不换行。但是数据中不可以存在空格
Java liunx c python hexo
  1. 逗号分隔
    使用英文半角逗号分隔数据进行存储,不换行,但是和空格一样,数据中不可以出现英文半角逗
Java,liunx,c,python,hexo
  1. 其他方式:
    使用其他符号或符号组合分隔,建议采用特殊符号:但是需要根据数据特点定义,通用性较差
Java$liunx$c$python$hexo
Java&liunx&c&python&hexo

一维数据的处理

存储<->表示

  • 将存储的数据写入程序
  • 将程序表示的数据写入文件
  1. 从空格分隔的文件读入数据
    定义一段文本:
>>>f = open("1.txt","r").read()
>>>s = f.split()
>>>print(s)
['Java', 'liunx', 'c', 'python', 'hexo']

当然举一反三,特殊符号的那个

>>>ls = txt.split("&")

以上是读,那么接下来就是写了

  1. 空格分隔方式
ls = ["python","Java","c"]
f = open("f.TXT","w")
f.write(" ".join(ls))
f.close()

  1. 特殊分隔方式
f.write("$ ".join(ls))

不难发现这两个方法我们都很熟悉。

二维数据的格式化和处理

二维数据的表示

前面说列表不可以用于表达二维数据,现在可以了,但是有个条件:二维列表。什么是二维列表?很简单

[[1,2,3],[4,5,6]]

列表里面还有列表。则就是一个二维的。当然二维列表也是可以遍历的,两层for即可。

list1 = [[1,2,3],[4,5,6]]
count = []
for i in list1:for j in i:print(j)


方法还有很多,这不是唯一的求解

CSV数据存储格式

1.什么是CSV?

  • Comma-Separated Values
  • 国际通用的一维二维数据存储格式,一般.csv是扩展名
  • 每行一个一维数据,采用逗号分隔,无空格。
  • Excel和一遍编辑软件都可以读入或另存为CSV文件

什么意思呢?国际都认,我记得在电脑里看见过这类文件。
用记事本打开应该是这样~

  • 如果某个元素缺失,逗号依旧保留。

  • 二维数据的表头可以作为数据存储,也阔以另行存储。

  • 逗号为英文半角逗号,逗号与数据之间无额外空格。

这个都很好理解。

  1. 怎么存储呢
    按行存?按列存?

  2. 按行存或者按列存都可以,这个有程序而定。

  3. 一般索引习惯:Is[row][column],先行后列

  4. 根基一般习惯,外层列表每个元素是一行,按行存。

二维数据的存储

  1. .从CSV格式文件中读入数据。
    我们先定义一段文本
fo = open("fname.csv")
ls = []
for line in fo:line = line.replace("\n","")ls .append(line.split(","))
print(ls)
fo.close()

结果:

  1. 将数据写入CSV格式文件
s = [["1","2","3"],["4","5","6"],["7","8","9"]]
f = open("fname.csv","w")
for a in s:f.write(",".join(a) + "\n")
f.close()

.
有图有真相
3. 二维数据的逐一处理
这部分我们提前了。两个for即可

总结

这就是这一章的学习笔记,写完这篇笔记,我也就了解的差不多了,学会了,
当然学到这里还不算自动化办公的成果,与其用Python写文章,在生成Word,那我为什么不直接打开Word呢,还不用写代码。
当然可以吧表格的数据导出来求最大值,最小值。
如果看到了这里,谢谢您,如果对您有帮助,这是我的荣幸。如有有不足,欢迎指出,谢谢您

Python之文件和数据格式化学习笔记相关推荐

  1. Python文件和数据格式化学习笔记

    一.文件的使用 1. 文件的定义: 文件是数据的抽象和集合:文件是存储在辅助存储器上的数据序列:文件是数据存储的一种形式: 2. 文件的展现方式:文本文件和二进制文件(两种) 文本文件和二进制文件只是 ...

  2. python之文件与数据格式化

    ⽂件的作⽤: 可以永久的保存数据. ⽂件在硬盘中存储的格式是⼆进制. 打开⽂件 读写⽂件 关闭⽂件 读⽂件-r #1.打开文件,是文件从硬盘中存到内存中 # open(file, mode='r' , ...

  3. python读取文件路径格式_Python学习笔记读写文件之文件与文件路径

    随笔记录方便自己和同路人查阅. #------------------------------------------------我是可耻的分割线--------------------------- ...

  4. 北理工嵩天Python语言程序设计笔记(8 文件和数据格式化)

    前言 本文是对<北理工 嵩天/黄天宇/礼欣 Python语言程序设计>的学习笔记,供自己查阅使用. 文章目录 北理工嵩天Python语言程序设计笔记(目录) 北理工嵩天Python语言程序 ...

  5. python气象数据可视化学习笔记6——利用python地图库cnmaps绘制地图填色图并白化

    文章目录 1. 效果图 2. cnmaps简介及安装 2.1 写在前面 2.2 cnmaps简介和安装 3. 导入库 4. 定义绘图函数 4.1 使用get_adm_maps返回地图边界 4.2 ax ...

  6. Python语法基础(U.7)-文件和数据格式化

    为mooc网站的北京理工大学的 嵩天 .黄天羽 .礼欣 三位老师的课程笔记. 欢迎starGITHUB可下载源码 7 文件和数据格式化 7.1 文件的使用 7.2 实例11:自动轨迹绘制 7.3 一维 ...

  7. python第七章文件和数据格式化选择题_《计算机二级Python语言程序设计考试》第7章:文件和数据格式化...

    注明:本系列课程专为全国计算机等级考试二级 Python 语言程序设计考试服务 目录 考纲考点 文件的使用: 文件打开.关闭和读写 数据组织的维度:一维数据和二维数据 一维数据的处理:表示.存储和处理 ...

  8. 计算机二级python 知识点篇(文件和数据格式化)

    计算机二级python 知识点篇(文件和数据格式化) 考纲考点 文件的使用: 文件打开. 关闭和读写 数据组织的维度: 一维数据和二维数据 一维数据的处理: 表示. 存储和处理 二维数据的处理: 表示 ...

  9. Day06-Python文件和数据格式化

    简介 此系列主要记录若干年前学习Python的心路历程,本文为第六章(同时也是基础内容的最后一章)Python文件和数据格式化.经过以上学习应该已经掌握Python的基本编程. 文件的使用: 数据的抽 ...

最新文章

  1. 【经典书】随机矩阵理论与无线网络
  2. hive值乘以0.01保留一位小数_Hive窗口函数01-SUM、MIN、MAX、AVG
  3. fatal error C1075: “{”: 未找到匹配令牌
  4. 通俗讲解分布式锁,看完不懂算我输
  5. kafka分区及副本在broker的分配
  6. firefox自动化测试的常用插件
  7. Android开发面试题之求一个数的N次幂手写算法
  8. 傅里叶变换对噪声进行频谱分析
  9. 下列类型不是mysql_下列( )类型不是MySQL中常用的的数据类型。
  10. 浙江大学计算机科学与技术博士培养研究方向,浙江大学计算机科学技术学院博士研究生导师简介:王跃明...
  11. OpenStack基金会任命马振强为中国区大使
  12. linux acrobat,开源Linux Acrobat Javascript编辑器
  13. 正则表达式(用户名表单验证/验证座机号码/正则替换replace)
  14. html背景色坐标,【已解决】Html的Canvas设置全局背景色
  15. jQuery打字效果
  16. 庞博 上海交大计算机系,那个脱口秀的段子手——交大帅哥庞博
  17. AndroidStudio中Unable to delete directory: app解决办法
  18. 什么是数据规约,数据规约的策略都有哪些
  19. 数学美 之 判断线段相交的最简方法
  20. html5服务器推送消息的各种解决办法,WEB服务器推送消息的各种解决办法

热门文章

  1. 《尽管去做》警句摘录
  2. SEO 网络推广108式助你流量猛增
  3. python curses_简单的Python的curses库使用教程
  4. 金蝶EAS8.6 金蝶EAS8.5 SHR8.6 金蝶EAS7.5 金蝶EAS7.03
  5. SpringBoot整合华为云OBS实现文件上传下载
  6. Java高尔夫_2011年高尔夫巡回赛
  7. Parietal Lobe and Its Function顶叶及其功能
  8. 深陷财务造假丑闻,瑞幸咖啡爆单了!外卖小哥惊呼:单子多得忙不过来...烧钱模式已走到尽头?...
  9. 汉堡王什么汉堡好吃_汉堡王什么汉堡好吃
  10. powershell批量修改AD域用户UPN后缀