day 05 预科
文本处理
什么是文件
文件是操作系统提供的一个特殊概念,拿来存储信息的
什么是文本
.txt/.word/.md/.py/.xml/.ini 存储的是文字
视频/音频文件(多媒体文件)
我们如何通过文本编辑器去控制txt文件
# file_path = 'D:\上海python12期视频\python12期预科班视频\day 05\新时代中国特色社会主义.txt'
# f = open(file_path) # 把该路径的文件读入内存,只是没有可视化的界面而已
# print(f)
# data = f.read() # 读取文件
# print(data)
# f.close()
# 打开文件的三种模式 r--》read(只读不可写)/w-->write(只写不可读,清空文本文件)/a--》append(只写不可读,追加)
file_path = r'D:\上海python12期视频\python12期预科班视频\day 05\新时代中国特色社会主义.txt'
# w: 清空后写入
# a:直接追加在文本末尾
f = open(file_path, 'a', encoding='gbk') # encoding告诉计算机用什么编码格式翻译硬盘中的0和1
print('f.readable():', f.readable())
print('f.writable():', f.writable())
f.write('国')
# data = f.read()
# print(data)
# 右键点击文本--》 local history --》 show history
# encoding
# 0和1
# 0001 a
# 0010 b
# 0011 c
# utf8
# 美国的编码能给中国人用吗?中国也弄了一套编码规则,中国的叫gbk
# 0001 中
# 0001
# 0001 0001 0001
文本高级
# t和b模式
# gbk/utf8只针对文本,所以音频通过rb模式打开-->读取二进制,b模式下没有encoding这个参数,b不单独使用,一般与r/w/a一起配合使用
# f = open(r'D:\上海python12期视频\python12期预科班视频\day 05\01 文本处理.mp4','rb') # 读入内存
#
# data = f.read()
# t模式针对文本文件,t模式不单独使用,必读得和r/w/a一起使用
# f = open(r'D:\上海python12期视频\python12期预科班视频\day 05\关于实施乡村振兴战略的意见.txt','rt',encoding='utf8')
# data = f.read()
# print(data)
# print(1)
# # print(r'\n') # \n本来是换行的意思,加上r之后变成\n
# print('\\n')
# print(2)
# 高级应用
# 可读可写-->不建议使用
# 打开一个文件,内容是 abc
# 写入 10s -> abc后面加个d
# 读出 5s --> 没有写入 --> abc
# 写入 10s --> abc后面加个d
# 再过 5s --> 第一次写入成功了 --> abcd
# 又过了5s --> 第二次写入给计算机的指令是 abc后面加个d -> 报错
# r+可写可读,a+可写可读,w+可写可读(清空文件)
# f = open(r'D:\上海python12期视频\python12期预科班视频\day 05\关于实施乡村振兴战略的意见.txt','r+',encoding='utf8')
# print(f.readable())
# print(f.writable())
# f.close() # 解除他对操作系统的占用
# 为什么不用关闭
# with 会自动关闭文件
with open(r'D:\上海python12期视频\python12期预科班视频\day 05\关于实施乡村振兴战略的意见.txt','r+',encoding='utf8') as fr:
# 这个缩进内部的代码都是文件打开的状态
data = fr.read()
print(data)
print(1)
文本处理+高级分析
import jieba
import imageio
import wordcloud
# 1. 读取文件内容
with open(r'D:\上海python12期视频\python12期预科班视频\day 05\huijiadeyouhuo.txt','r+',encoding='utf8') as fr:
# for i in range(1000):
# fr.write('回家的诱惑,')
# fr.flush() # 相当于保存
data = fr.read()
# 2. 使用结巴模块对文件内容切割
jieba.add_word('回家的诱惑') # 让"回家的诱惑"成为一个单词
jieba.del_word('女士')
jieba.del_word('先生')
jieba.del_word('小马')
data_list = jieba.lcut(data)
data = ' '.join(data_list)
# 3. 找到一张洪世贤的图片
img = imageio.imread(r'D:\上海python12期视频\python12期预科班视频\day 05\hongshixian.jpg')
# 4. 使用词云模块生成词云
w = wordcloud.WordCloud(background_color='white',mask=img,font_path=r'C:\Windows\Fonts\simsun.ttc',max_words=100)
w.generate(data)
w.to_file('nihaosaoa.png')
day 05 预科的更多相关文章
- Day 05 文本处理和爬虫基础1
目录 什么是文件 什么是文本 如何通过文本编辑器控制.txt文件 打开文件的三种模式 t和b模式 高级应用 文本处理 + 词云分析 效果如下 爬虫原理 requests模块 re模块 爬取图片 爬取视 ...
- Java学习笔记(05)
目录: static的用法 主函数的定义 增强for的循环 单例设计模式 封装 一.Static的用法 1.对象的内存分析 对象的引用变量是存在于栈区,而在堆区开辟了一块内存空间,调用对象给成员变量赋 ...
- iOS系列 基础篇 05 视图鼻祖 - UIView
iOS系列 基础篇 05 视图鼻祖 - UIView 目录: UIView“家族” 应用界面的构建层次 视图分类 最后 在Cocoa和Cocoa Touch框架中,“根”类时NSObject类.同样, ...
- 【web开发 | 移动APP开发】 Web 移动开发指南(2017.01.05更新)
版本记录 - 版本1.0 创建文章(2016.12.30) - 版本1.1 更正了hybird相关知识:增加了参考文章(2017.01.05): + Web APP更正为响应式移动站点与页面,简称响应 ...
- javaSE基础05
javaSE基础05:面向对象 一.数组 数组的内存管理 : 一块连续的空间来存储元素. Int [ ] arr = new int[ ]; 创建一个int类型的数组,arr只是一个变量,只是数组的一 ...
- 异步编程系列第05章 Await究竟做了什么?
p { display: block; margin: 3px 0 0 0; } --> 写在前面 在学异步,有位园友推荐了<async in C#5.0>,没找到中文版,恰巧也想提 ...
- javascript基础05
javascript基础05 1.变量的作用域 变量既可以是全局,也可以是局部的. 全局变量:可以在脚本中的任何位置被引用,一旦你在某个脚本里声明了全局变量,你就可以 在这个脚本的任何位置(包括函数内 ...
- Linux 第05天
Linux 第05天 1.连接到Internet 1.1 配置网络信息 dmesg命令————查看网卡信息 dmesg | grep -i net ifconfig命令————查看IP.网关等相关信息 ...
- 05:统计单词数【NOIP2011复赛普及组第二题】
05:统计单词数 总时间限制: 1000ms 内存限制: 65536kB 描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次 ...
随机推荐
- Nodejs 包与 npm第三方模块安装和 package.json 以及 cnpm
包与 NPM 1. 包 Nodejs 中除了它自己提供的核心模块外,可以自定义模块,也可以使用第三方的模块.Nodejs 中第三方模块由包组成,可以通过包来对一组具有相互依 赖关系的模块进行统一管理. ...
- Sequelize模糊查询
const Sequelize = require('sequelize'); const Op = Sequelize.Op; User.findAll({ raw: true, order: [ ...
- 【转】WPF DataGridComboBoxColumn使用
若要填充下拉列表,请首先使用下列选项之一设置 ComboBox 的 ItemsSource 属性.静态资源. x:Static 代码实体.ComboBoxItem 类型的内联集合.实现效果如下: 如需 ...
- Ubuntu系统配置双网卡ssh放外网
(下面的IP,最后一位都用X代替) 先看看网卡设备的名字,下面要用(一般就是前两个):ifconfigsudo lshw -C network| grep -e 'logical name' 设置服 ...
- python 使用sqlalchemy进行数据库操作
sqlalchemy是python下一个著名的数据库orm库,可以方便地进行数据表创建.数据增删改查等操作 最详细的教程,见官方:https://docs.sqlalchemy.org 这里列举一些常 ...
- 怎样在sql server profiler跟踪时只显示自己关心的内容
当我们想知道.net程序到底执行了哪些SQL的时候,通常会使用sql server profiler,但是如果不加设置,我们程序执行的sql通常会被系统的SQL淹没,通过以下的方法,可以只显示我们需要 ...
- python中的绝对导入与相对导入,from __future__ import absolute_import的区别
相对导入:在不指明 package 名的情况下导入自己这个 package 的模块,比如一个 package 下有 a.py 和 b.py 两个文件,在 a.py 里 from . import b ...
- https本地自签名证书添加到信任证书访问
1.背景 本文适用于基于https(http+ssl)的网站通信.本地调试等,上线是请寻找免费 ssl证书申请. 本地调试过程中,一些特殊的场景需要我使用http+ssl通信,比如在Chrome中使用 ...
- Win7下Powershell 由2.0 升级为 5.1
今天在构建脚本的时候老是提示 Windows 7 默认的Powershell是2.0,查看版本 下载 https://www.microsoft.com/en-us/download/details. ...
- [转帖]很遗憾,没有一篇文章能讲清楚ZooKeeper
很遗憾,没有一篇文章能讲清楚ZooKeeper https://os.51cto.com/art/201911/606571.htm [51CTO.com原创稿件]互联网时代是信息爆发的时代,信息的高 ...