从零开始学Python(七) 文件和数据格式化

从零开始学Python(七) 文件和数据格式化

一、文件的使用

1、文件的类型
文件是数据的抽象和集合
①文件是存储在辅助存储器上的数据序列
②文件是数据存储的一种形式
③文件展现形态:文本文件和二进制文件
2、文件的打开关闭
文件处理的步骤:打开->操作->关闭
文件的打开:
<变量名> = open(<文件名>,<打开模式>)
打开模式:
从零开始学Python(七) 文件和数据格式化_第1张图片
文件的关闭:<变量名>.close()
3、文件内容的读取
从零开始学Python(七) 文件和数据格式化_第2张图片
从零开始学Python(七) 文件和数据格式化_第3张图片
4、文件的全文本操作
(1)遍历全文本
①一次读入,统一处理 txt=fo.read()
②按数量读入,逐步处理 txt = fo.read(n)
(2)逐行遍历
①一次读入,分行处理:for line in fo.readlines()
②分行读入,逐行处理:for line in fo
5、数据的文件写入
从零开始学Python(七) 文件和数据格式化_第4张图片
从零开始学Python(七) 文件和数据格式化_第5张图片

二、实例:自动轨迹绘制

#AutoTraceDraw.py
import turtle as t
t.title("自动轨迹绘制")
t.setup(800,600,0,0)
t.pencolor("red")
t.pensize(5)
#数据读取
datals = []
f = open("data.txt")
for line in  f:
    line = line.replace("\n","")
    datals.append(list(map(eval, line.split(","))))
f.close()
#自动绘制
for i in range(len(datals)):
    t.pencolor(datals[i][3],datals[i][4],datals[i][5])
    t.fd(datals[i][0])
    if datals[i][1]:
        t.rt(datals[i][2])
    else:
        t.lt(datals[i][2])

三、一维数据的格式化和处理

1、数据组织的维度
维度:一组数据的组织形式
一维数据:由对等关系的有序或无序数据构成,采用线性方式组织。
二维数据:由多个一维数据构成,是一维数据的组合形式
多维数据:由一维或二维数据在新维度上扩展形成
高维数据:仅利用最基本的二元关系展示数据间的复杂结构
2、一维数据的表示
若数据间有序,则用列表;无序则用集合。
3、一维数据的存储
空格分隔 逗号分隔 其他方式(特殊符号或符号组合)
4、一维数据的处理
读入txt.split(“ ”),写入f.write(‘’.join(ls))

四、二维数据的格式化和处理

1、表示:使用列表类型。使用两层for循环遍历每个元素。
2、CSV格式与二维数据存储
①国际通用的一二维数据存储格式,一般.csv扩展名
②每行一个一维数据,采用逗号分隔,无空行
③Excel和一般编辑软件都可以读入或另存为csv文件
④如果某个元素缺失,逗号仍要保留
⑤二维数据的表头可以作为数据存储,也可以另行存储
⑥逗号为英文半角逗号,逗号与数据之间无额外空格
3、二维数据存储:一般索引习惯ls[row][column]
4、二维数据的处理
读入ls.append(line.split(“,”)),写入f.write(‘,’,join(item)+’\n’)
逐一处理,采用二层循环
从零开始学Python(七) 文件和数据格式化_第6张图片

五、wordcloud库的使用

1、基本介绍:优秀的词云展示第三方库
2、基本使用:wordcloud.WordCloud()代表一个文本对应的词云
3、常规方法
从零开始学Python(七) 文件和数据格式化_第7张图片
配置参数:
从零开始学Python(七) 文件和数据格式化_第8张图片
从零开始学Python(七) 文件和数据格式化_第9张图片
从零开始学Python(七) 文件和数据格式化_第10张图片
从零开始学Python(七) 文件和数据格式化_第11张图片
从零开始学Python(七) 文件和数据格式化_第12张图片

六、实例:政府工作报告词云

#GovRptWordCloudv2.py
import jieba
import wordcloud
from scipy.misc import imread
mask = imread("chinamap.jpg")
excludes = { }
f = open("新时代中国特色社会主义.txt", "r", encoding="utf-8")
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = " ".join(ls)
w = wordcloud.WordCloud(\
    width = 1000, height = 700,\
    background_color = "white",
    font_path = "msyh.ttc", mask = mask
    )
w.generate(txt)
w.to_file("grwordcloudm.png")

你可能感兴趣的:(从零开始学Python(七) 文件和数据格式化)