用 Python 给母亲送祝福!

坦白局!一个大厂Java工程师近20年的进阶心得
我是湘王,一位近20年经验的开发工程师,有丰富的VB、PHP、Python、Java开发经验,曾管理过大厂200+人的软件开发团队,任职过CTO(首席技术官),也有持续创业经历,对于Java学而不精,我总结以下两点: *,没有清晰的学习路径,知识碎片化,不成系统。比如对集合类,并发包,IO/NIO,JVM,内存模型,泛型,异常,反射,等没有系统深入了解,看过源码了解底层的设计,但缺乏对背后的逻辑清晰认知。 举个例子,如面试阶段会问ConcurrentHashMap,CopyOnWrite,..

文 | 潮汐

来源:Python 技术「ID: pythonall」

今天是母亲节,小阿酱在这里祝天下所有的母亲节日快乐,作为女儿的我除了买*物送惊喜外还要用 Python 送上特殊的祝福!

母亲节(Mother’s Day),是一个感谢母亲的节日。妈妈曾经也是一个女孩子,怕黑怕虫子,也会掉眼泪,笨手笨脚怕扎针,但她温柔了我,温柔了岁月。

借此祝全天下妈妈母亲节快乐!

制作母亲节词云图-祝福方式1
这个世界只有一个母亲,包容我的一千万任性!

今天我用 Python 制作一个词云图给妈妈送祝福,制作代码如下:

import numpy
import multidict
import matplotlib.pyplot as plt
from scipy.misc import imread
from wordcloud import WordCloud, ImageColorGenerator

def transform_format(val):
“””
用于去除杂色
Arguments:
val {[array]} — RGB颜色组
Returns:
[array] — 去除杂色后的值
“””
if val[0] > 245 and val[1] > 245 and val[2] > 245:
val[0] = val[1] = val[2] = 255
return val
else:
return val

def gen_happy_birthday_cloud(file, name):
words = multidict.MultiDict()
# 必须先初始化两个*大权重的
words.add(‘母亲节快乐’, 10)
words.add(name, 12)

# 随意插入新的词语
for i in range(1000):
words.add(‘妈妈’, numpy.random.randint(1, 5))
words.add(‘您辛苦了’, numpy.random.randint(1, 5))
words.add(name, numpy.random.randint(1, 5))

# 设定图片
bimg = imread(file)
for color in range(len(bimg)):
bimg[color] = list(map(transform_format, bimg[color]))

wordcloud = WordCloud(
background_color=’white’,
mask=bimg,
font_path=’simhei.ttf’
).generate_from_frequencies(words)

# 生成词云
bimgColors = ImageColorGenerator(bimg)

# 渲染词云
plt.axis(“off”)
plt.imshow(wordcloud.recolor(color_func=bimgColors))
plt.savefig(name + ‘.png’)
plt.show()

gen_happy_birthday_cloud(“mother.jpg”, “母亲节快乐”)
思路为: 导入一张图片后再输入节日祝福语后进行图片渲染,*后再根据图片形状生成相应词云图。

运行结果如下:
%title插图%num