python日记Day09——文件和数据格式化(词云为例)

python日记——文件和数据格式化(词云为例)

一、文件的使用

  • 文件的类型
    1、文件是数据的抽象和集合;
    2、文件展现形态:
    文本文件:由单一特定编码组成的文件,可被看成是存储着的长字符串
    二进制文件:直接由比特0、1组成,没有统一字符编码

  • 文件的打开和关闭
    1、文件的打开:<变量名> = open(<文件路径>,<打开模式>);
    2、 打开模式:r(只读)、w(覆盖写)、x(创建写)、a(追加写)、b(二进制文件模式)、t(文本文件模式,默认值)、+(与r/w/x/a一同使用,在原功能基础上增加同时读写功能);
    3、文件的关闭:<变量名>.close()

  • 文件内容的读取
    1、f.read(size):读入全部内容,如果给出参数,读入前size长度;
    2、f.readline(size):读入一行内容,如果给出参数,读入该行前size长度;
    3、f.readlines(size):读入所有行内容,以每行为元素形成列表,如果给出参数,读入前size行。

  • 数据的文件写入
    1、f.write(s):向文件写入一个字符串或字节流;
    2、f.writelines(s):将一个元素全为字符串的列表写入文件,元素直接拼接后写入;
    3、f.seek(offset):改变当前文件操作指针的位置,offset的含义如下:0-文件开头;1-当前位置;2-文件结尾;常用于文件写入后(指针在末尾)对文件从开头(指针在开头)进行遍历。

二、数据的格式化和处理

  • 数据的维度
    一维、二维、多维、高维(字典类型)
  • 一维数据
    1、一维数据的表示:如果数据间有序,使用列表;如果数据间无序,使用集合;
    2、一维数据的存储方式:空格分隔、逗号分隔、特殊字符分隔(通用性较差);
    3、一维数据的处理:字符串方法,.split()和.join()。
  • 二维数据
    1、二维数据的表示:列表类型,其中每个元素也是一个列表;
    2、二维数据的处理:for循环+.split()和.join()。

三、wordcloud库的使用

  • wordcloud库是优秀的词云展示第三方库;
  • wordcloud库的使用说明
    1、wordcloud库把词云当作一个WordCloud对象
    w = wordcloud.WordCloud(参数);
    2、绘制词云的形状、尺寸和颜色等参数都可以在WordCloud对象中设定
    width:指定词云对象生成图片的宽度,默认400像素;
    height:指定词云对象生成图片的高度,默认200像素;
    min_font_size、max_font_size:指定词云中字体的最小、最大字号;
    font_step:指定词云中字体字号的步进间隔,默认为1;
    font_path:指定字体文件的路径,即修改字体类型;
    max_words:指定词云中显示的最大单词数量,默认200;
    stop_words:指定词云的排除词列表,即不显示的单词列表;
    background_color:指定词云图片的背景颜色,默认为黑色;
    mask:指定词云形状,默认为长方形,需要引用imread()函数:
from scipy.misc import imread
mk = imread('pic.png')
w = wordcloud.WordCloud(mask = mk)
  • wordcloud库使用步骤
    1、配置对象参数;
    2、加载文本:w.generate(txt),向WordCloud对象w中加载文本txt;
    3、输出图片:w.to_file(filename),将词云输出为图像文件,.png或.jpg。

四、《2020中央一号文件》词云实例

import jieba
import wordcloud
from scipy.misc import imread
mk = imread("five.jpg")#词云生成特定形状,此处为五角星
txt = open("s.txt","r",encoding="utf-8")#打开文本
ls = txt.read()#读取文本
txt.close()
lsList = jieba.lcut(ls)#对文本进行分词并返回一个列表
lstxt = " ".join(lsList)#将列表转换成元素之间空格间隔的文本
w = wordcloud.WordCloud(width=1000,height=700,background_color='white',max_words=40, font_path="msyh.ttc",mask=mk)
w.generate(lstxt)
w.to_file("file.jpg")

运行效果
在这里插入图片描述

本文内容参考于北京理工大学嵩天老师相关课程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值