7.1文件的使用

1.1文本类型

文本文件:由单一特定编码组成的文件,如.txt

二进制文件:如.png,.avi

1.2文件的打开和关闭

打开-操作-关闭

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

打开模式:'r' 只读模式,默认值,如果文件不存在,返回FileNotFoundError

'w' 覆盖写模式,文件不存在则创建,存在则完全覆盖

'x' 创建写模式,文件不存在则创建,存在则FileExistsError

'a'追加写模式,文件不存在则创建,存在则在文件最后追加内容

'b'二进制文件模式

't'文本文件模式,默认值

'+' 与r/w/x/a一同使用,增加读写功能

<变量名>.close()

1.3文件内容的读取

<f>.read(size=) 读入全部内容,如果给出参数,读入前size长度

<f>.readline(size=) 读入一行内容,如果给出参数,读入该行前size长度s

<f>.readlines(hint=) 读入文件所有行,以每行为元素列表,如果给出参数,读入该行前hint行

1.4数据的文件写入

<f>.write(s) 文件写入一个字符串或字节流

<f>.writelines(lines) 将一个元素全为字符串的列表写入文件

<f>.seek(offset) 改变当前文件操作指针的位置,offset:0-文件开头,1-当前位置,2-文件结尾

7.2自动轨迹绘制实例

#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]) #RGB颜色
t.fd(datals[i][0])
if datals[i][1]:
t.right(datals[i][2])
else:
t.left(datals[i][2])

7.3一维数据的格式化和处理

数据组织的维度

操作周期:存储格式、表示数据类型、操作

一维数据的表示:有序-列表,for循环遍历;无序-集合,for循环遍历;

存储:空格分隔,不换行;逗号分隔,不换行;特殊符号

处理:

f.write(' '.join(ls))#把空格放置在每个元素之间

7.4二维数据的格式化和处理

二维数据的表示:二维列表;

CSV数据存储格式:

二维数据的存储

二维数据的处理:

ls = [[],[],[]]
f = open("1806.csv",'w')
for item in ls:
f.write(','.join(item)+"\n")
f.close()

7.5Wordcloud库

w = wordcloud.WordCloud()

w.generate(txt) 向WordCloud对象w中加载文本txt

w.to_file(filename)将词云输出为图像文件,.png或.jpg格式

width:默认400

height:默认200

min_font_size:指定词云中字体最小号,默认4号

max_font_size:。。。。。。。最大号,根据高度自动调节

eg: w = wordcloud.WordCloud(min_font_size=20)

font_step 指定词云中字体字号的步进间隔,默认为1

font_path :指定字体文件的路径,默认None

max_words :指定词云显示的最大单词量,默认200

stop_words:指定词云的排除词列表,即不显示的单词列表

mask:

from scipy.misc import imread
mk = imread("pic.png")
w = wordcloudWordCloud(mask=mk)

background_color:指定词云的背景颜色,默认为黑色

import wordcloud
txt = "life is short,you need python"
w = wordcloud.WordCloud(\
background_color = "white")
w.generate(txt)
w.to_file("pywcloud.png")
import jieba
import wordcloud
txt = "这个问题困扰了我一年。我一直不敢和他提。\
甚至有时候我会很难受,不行我就辞职吧。\
虽然工作不错、公司不错,但是这个吸二手烟是硬伤啊!\
看吧,这就是我原来的思维。因为不敢提这件事情,甚至想到用辞职去解决。\
进行了心灵强大的刻意练习之后,我在他一次开会抽烟的时候,发了微信,和善而坚定,告诉他不要在我面前吸烟了,电子烟可以。\
结果他爽快的答应了。之后再也没犯过。"
w = wordcloud.WordCloud(width = 1000,font_path="msyh.ttc",height = 700)
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("pycloudcloud.png")

7.6“政府工作报告”词云实例

step1:读取文件、分词整理

step2:设置并输出词云

step3:观察结果,优化迭代

#CovRptWordCloudv1.py
import jieba
import wordcloud
f = open("关于实施乡村振兴战略的意见1.txt","r",encoding="utf-8")#gb2312
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = " ".join(ls)
w = wordcloud.WordCloud(font_path="msyh.ttc",width=1000,height=700,\
background_color="white",max_words = 15)
w.generate(txt)
w.to_file("grwordcloud.png")

Python第七章(北理国家精品课 嵩天等)的更多相关文章

  1. Python第八章(北理国家精品课 嵩天等)

    程序设计方法 8.1体育竞技分析实例 from random import random def printIntro(): print("这个程序模拟两个选手A和B的某种竞技比赛" ...

  2. Python第六章(北理国家精品课 嵩天等)

    一 1.集合类型定义及其操作: 集合用{}表示,元素用逗号分隔,无序,唯一 集合操作符: |:并 -:减 &:交 ^ :补 <= <:判断子集关系 >= >:判断包含关 ...

  3. Python第四章(北理国家精品课 嵩天等)

    一.程序的分支结构 二.身体质量指数BMI #CalBIv1.py height,weight = eval((input("请输入身高(米)和体重\(公斤)[逗号隔开]:"))) ...

  4. Python第二章(北理国家精品课 嵩天等)

    一.深入理解Python语言 语法简洁 >13万第三方库 二.Python蟒蛇绘制 #PythonDraw.py import turtle turtle.setup(650,350,200,2 ...

  5. Python第五章(北理国家精品课 嵩天等)

    函数和代码复用 函数的定义和使用 def <函数名>(<参数(0个或多个)>): <函数体> return <返回值>可选参数放在不可选参数之后*b不定 ...

  6. Python第三章(北理国家精品课 嵩天等)

    一.数字类型及其操作 整数:pow(x,y),想算多大,就算多大:以0b或0B开头表示二进制:以0o或0O开头表示八进制:以0x或0X开头表示十六进制. 浮点数:取值范围-10^308至10^308, ...

  7. Python第一章(北理国家精品课 嵩天等)

    1.1程序设计基本方法 IPO 分析问题,划分边界,设计算法: 编写程序,调试测试,升级维护. 1.2Python开发环境配置 1.3实例1:温度转换 1.4Python程序语法元素分析 缩进,#添加 ...

  8. 简学Python第七章__class面向对象高级用法与反射

    Python第七章__class面向对象高级用法与反射 欢迎加入Linux_Python学习群  群号:478616847 目录: Python中关于oop的常用术语 类的特殊方法 元类 反射 一.P ...

  9. <automate the boring stuff with python>---第七章 正则实例&正则贪心&匹配电话号码和邮箱

    第七章先通过字符串查找电话号码,比较了是否使用正则表达式程序的差异,明显正则写法更为简洁.易扩展.模式:3 个数字,一个短横线,3个数字,一个短横线,再是4 个数字.例如:415-555-4242 i ...

随机推荐

  1. (完美)华为Mate8 NXT-TL00的USB调试模式在哪里开启的经验

    每当我们使用pc通过数据线连接上安卓手机的时候,如果手机没有开启usb调试模式,pc则没法成功检测到我们的手机,在一些情况下,我们使用的一些功能比较强的的软件如以前我们使用的一个软件引号精灵,老版本就 ...

  2. (7)udp-socket

    # upd 协议:(1)#client 端口:import socketsk = socket.socket(type=socket.SOCK_DGRAM)message = "我来了大哥& ...

  3. php 根据输入的参数,获取上季度最后一个月的时间

    public function getTime( $time ='2017-06-01 00:00:00'){ $month = date('m',strtotime($time)); $season ...

  4. Linux下启动weblogic服务

    第一步找到目录:cd weblogic/user_projects/domains/odm_dat_dc_domain/bin/ 第二步查看进程: ps -ef|grep java 第三步杀进程: k ...

  5. java Arrays常用方法

    1. 简介 Arrays类包含用于操作数组的各种方法(例如排序和搜索).此类还包含一个静态工厂,允许将数组视为列表. 如果指定的数组引用为null,则此类中的方法都抛出NullPointerExcep ...

  6. list map to map

    Map<String, Object> merged = lists.stream() .map(Map::entrySet) .flatMap(Set::stream) .collect ...

  7. 出发a链接里面的div,a链接不进行跳转

    HTML <a href="http://www.baidu.com" style="display: inline-block; width: 100%; hei ...

  8. Python2.7.13下载安装全过程(Windows版)

    前提:    我下载的Python是windows版本的,演示过程是在win10 64位操作系统上安装的. 1.下载 进入官网https://www.python.org/,找到Dowdloads,根 ...

  9. maven项目的配置

    软件151  王帅 1.增加web.xml Maven项目最重要的配置文件是pom.xml,pom是“项目对象模型”的意思.现在pom.xml中有一个错误,提示缺少web.xml: 展开目录src—m ...

  10. 阿里云服务器报 Liunx异常文件下载处理办法

    阿里云服务器报 Liunx异常文件下载.挖矿进程.SSH远程非交互式一句话异常指令执行 清除办法 1.删除crontab里面的自启动脚本 2.删除authorized_keys 里面密匙 3.删除#/ ...