python边学边记(一)

in #busy7 years ago


屏幕快照 2017-12-26 下午10.43.07.png

2017年,python火了,应该说这次火的很彻底,不仅伴随着人工智能的流行变得大放异彩,而且被上升到了国家战略层面:

不仅将Python列入到小学、中学和高中等传统教育体系中,并借此为未来国家和社会发展奠定了人工智能的人才培养基础,逐步由底层向高层推动“全民学Python”,从而进一步实现人工智能技术的推动和社会人才结构的更迭。

一直想学python多少年,可迟迟没有动手,可能是工作上用不到所以没有驱动力吧。不过最近发现了一个有趣的现象,python原来可以这么融入生活,所以才重拾了学习它的想法。


这篇文章的图片便是我把自己的一篇文章,用python代码生成的。下面就说说是怎么做到的:

import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator,STOPWORDS
import jieba
import numpy as np
from PIL import Image

#读入背景图片
abel_mask = np.array(Image.open('/Users/keepup/demo/屏幕快照 2018-01-01 上午12.35.09.png'))

#读取要生成词云的文件
text_from_file_with_apath = open('/Users/keepup/demo/test-cn.txt').read()

#通过jieba分词进行分词并通过空格分隔
wordlist_after_jieba = jieba.cut(text_from_file_with_apath, cut_all = True)
wl_space_split = " ".join(wordlist_after_jieba)
#my_wordcloud = WordCloud().generate(wl_space_split) 默认构造函数
my_wordcloud = WordCloud(
background_color='white', # 设置背景颜色
mask = abel_mask, # 设置背景图片
max_words = 1000, # 设置最大现实的字数
stopwords = STOPWORDS, # 设置停用词
font_path = 'simsun.ttf',# 设置字体格式,如不设置显示不了中文
max_font_size = 200, # 设置字体最大值
random_state = 50, # 设置有多少种随机生成状态,即有多少种配色方案
scale=5,
width=1000,
height=700,
margin=2# 设置图片默认的大小,但是如果使用背景图片的话,那么保存的图片大小将会> > 按照其大小保存,margin为词语边缘距离
).generate(wl_space_split)

#根据图片生成词云颜色
image_colors = ImageColorGenerator(abel_mask)
#my_wordcloud.recolor(color_func=image_colors)

#以下代码显示图片
plt.imshow(my_wordcloud)
plt.axis("off")

plt.savefig('pink.png', dpi=1000)
plt.show()

之前一直觉得编程是一件很严肃的事情,但今天才发现,编程一直都可以很生活化,只是自己方发现而已。一旦找到了事情的突破点,那么就会变得不那么难了!


一个python小白的进化之路
2018年01月10日

Sort:  

多写多应用,一切都是那么有趣。