Python如何制作圣诞树和圣诞树词云
发表于:2025-01-28 作者:千家信息网编辑
千家信息网最后更新 2025年01月28日,这篇文章将为大家详细讲解有关Python如何制作圣诞树和圣诞树词云,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、前言圣诞节庆祝和送礼物貌似现在已经成为全球流行的
千家信息网最后更新 2025年01月28日Python如何制作圣诞树和圣诞树词云
这篇文章将为大家详细讲解有关Python如何制作圣诞树和圣诞树词云,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
一、前言
圣诞节庆祝和送礼物貌似现在已经成为全球流行的习惯~
本文利用 Python 制作圣诞树和词云,教会你多种方法,代码直接运行即可,学会拿去送给你想要祝福的人吧~~
二、Python画圣诞树
1. 圣诞树1号
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :AI庭云君@CSDN :https://yetingyun.blog.csdn.net/"""import turtlescreen = turtle.Screen()screen.setup(800, 600)circle = turtle.Turtle()circle.shape('circle')circle.color('red')circle.speed('fastest')circle.up()square = turtle.Turtle()square.shape('square')square.color('green')square.speed('fastest')square.up()circle.goto(0, 280)circle.stamp()k, j = 0, 0for i in range(1, 17): y = 30 * i for j in range(i - k): x = 30 * j square.goto(x, -y + 280) square.stamp() square.goto(-x, -y + 280) square.stamp() if i % 4 == 0: x = 30 * (j + 1) circle.color('red') circle.goto(-x, -y + 280) circle.stamp() circle.goto(x, -y + 280) circle.stamp() k += 2 if i % 4 == 3: x = 30 * (j + 1) circle.color('yellow') circle.goto(-x, -y + 280) circle.stamp() circle.goto(x, -y + 280) circle.stamp()square.color('brown')for i in range(17, 20): y = 30 * i for j in range(3): x = 30 * j square.goto(x, -y + 280) square.stamp() square.goto(-x, -y + 280) square.stamp() turtle.mainloop()
效果如下:
2. 圣诞树2号
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :AI庭云君@CSDN :https://yetingyun.blog.csdn.net/"""from turtle import *import turtleimport randomn = 100.0speed(96)turtle.setup(width=800, height=720)# 用screensize设置的是画布大小及背景色screensize(800, 800, "White")left(90)forward(3 * n)color("red", "yellow") # 五角星的颜色begin_fill()left(126)for i in range(5): forward(n / 5) right(144) forward(n / 5) left(72)end_fill()right(126)# 圣诞树颜色color("#00CC00")backward(n * 4.8)def tree(d, s): if d <= 0: return forward(s) tree(d - 1, s * .8) right(120) tree(d - 3, s * .5) right(120) tree(d - 3, s * .5) right(120) backward(s)tree(15, n)backward(n / 2)for i in range(200): a = 200 - 400 * random.random() b = 10 - 20 * random.random() up() forward(b) left(90) forward(a) down() if random.randint(0, 1) == 0: color('#FF0066') else: color('#FF6600') circle(2) up() backward(a) right(90) backward(b)turtle.mainloop()
效果如下:
还可以更改背景,加上下雪特效!如下所示:
# 画雪花关键代码def drawsnow(): # 定义画雪花的方法 t.ht() # 隐藏笔头,ht=hideturtle t.pensize(2) # 定义笔头大小 for i in range(200): # 画多少雪花 t.pencolor("white") # 定义画笔颜色为白色,其实就是雪花为白色 t.pu() # 提笔,pu=penup t.setx(r.randint(-350, 350)) # 定义x坐标,随机从-350到350之间选择 t.sety(r.randint(-100, 350)) # 定义y坐标,注意雪花一般在地上不会落下,所以不会从太小的纵座轴开始 t.pd() # 落笔,pd=pendown dens = 6 # 雪花瓣数设为6 snowsize = r.randint(1, 10) # 定义雪花大小 for j in range(dens): # 就是6,那就是画5次,也就是一个雪花五角星 # t.forward(int(snowsize)) #int()取整数 t.fd(int(snowsize)) t.backward(int(snowsize)) # t.bd(int(snowsize)) #注意没有bd=backward,但有fd=forward,小bug t.right(int(360 / dens)) # 转动角度drawsnow() # 调用画雪花的方法
3. 圣诞树3号
画一颗漂亮的圣诞树!!代码过长,限于篇幅不贴在文中,效果如下所示:
三、Python制作圣诞树词云
做词云得有关键词素材,这就去百度文库高校版下载一些圣诞祝福文章~~
12篇差不多够了吧
接下来上 Python 代码!!!!!!
# -*- coding: UTF-8 -*-"""@Author : 叶庭云@公众号 : AI庭云君@CSDN : https://yetingyun.blog.csdn.net/"""import jiebaimport refrom stylecloud import gen_stylecloudfrom PIL import Imageimport numpy as npwith open('./圣诞素材/Christmas.txt', encoding="utf-8") as f: data = f.read()# 文本预处理 去除一些无用的字符 只提取出中文出来new_data = re.findall('[\u4e00-\u9fa5]+', data, re.S)new_data = "/".join(new_data)# 文本分词 精确模式seg_list_exact = jieba.cut(new_data, cut_all=False)# 加载停用词with open('stop_words.txt', encoding='utf-8') as f: # 获取每一行的停用词 添加进集合 con = f.read().split('\n') stop_words = set() for i in con: stop_words.add(i)# 列表解析式 去除停用词和单个词result_list = [word for word in seg_list_exact if word not in stop_words and len(word) > 1]print(result_list)# 个人推荐使用的palette配色方案 效果挺好看 其他测试过 感觉一般~~# colorbrewer.qualitative.Dark2_7# cartocolors.qualitative.Bold_5# colorbrewer.qualitative.Set1_8gen_stylecloud( text=' '.join(result_list), # 文本数据 size=600, # 词云图大小 font_path=r'./font/猫啃网糖圆体.ttf', # 中文词云 显示需要设置字体 icon_name = "fas fa-tree", # 图标 output_name='./results/圣诞树06.png', # 输出词云图名称 palette='cartocolors.qualitative.Bold_5', # 选取配色方案)
效果如下所示:
四、彩蛋
在逛 Gitee 上还发现有人上传了 exe 可以直接生成圣诞树(貌似是C#做的?),效果如下所示:
关于"Python如何制作圣诞树和圣诞树词云"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
圣诞树
雪花
效果
制作
代码
大小
公众
就是
文本
方法
篇文章
颜色
UTF-8
云图
五角星
关键
坐标
文章
方案
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
scan网络技术指南
基金公司网络安全维护顾问
c软件开发工程师工资
全国网络安全大会通过了吗
接口转换数据库
淄川快消品管理软件开发
联想服务器不识别内存条
什么是中间件软件开发技术
江西省数据库招标
网络安全研究基地的股票
筑牢公司网络安全防火墙
易语言数据库软件
网络安全第40条
经典网络安全书籍
数据库修改视频
阿里大学生网络安全能力大赛
数据库能扩容吗
集群读数据库
江西智慧养老软件开发
扬州网络安全培训
网络安全手抄报2020曲老师
抗投诉服务器什么意思
网络安全知识感悟300字
电脑连服务器显示未识别网络
Asp绕过安全狗下载数据库
三国武将数据库
网络安全普法
中通服网络技术有限公司
软件开发侵权是谁的责任
传奇4国际服亚洲服最新服务器