概述
科赫雪花
- 科赫雪花:
- 科赫雪花小程序的打包(带图标)
百度百科的解释:
科赫雪花:
科赫雪花的绘制思想:
我们使用递归和tutle库来实现科赫雪花的绘制
首先调用turtle库。
import turtle
再定义一个koch函数,用于绘制科赫曲线。
该函数有两个参数,length表示最开始绘制科赫曲线的每一条直线的长度,n为科赫曲线的阶数。
当n==0时,我们只需要绘制一条直线;
若n!=0,绘制一条length为当前长度的1/3的n-1阶的科赫曲线;再让海龟左转60度,绘制第二条n-1阶的科赫曲线;然后左转120度,绘制第三条曲线,再左转-60度,绘制第四条曲线。
def koch(length, n):
if n == 0:
turtle.fd(length)
else:
for angle in [0,60,-120,60]:
turtle.left(angle)
koch(length/3,n-1)
定义一个main函数用于调用koch函数
def main():
turtle.setup(800, 400)
turtle.penup()
turtle.goto(-300, -50)
turtle.pendown()
turtle.pensize(3)
koch(600, 3)#调用koch函数,阶数为3
然后我们可以得到一条三阶的科赫曲线
我们需要绘制 科赫雪花,因此,我们需要对main函数做一下修改:
科赫雪花是以等边三角形三边生成的科赫曲线组成的。因此,只需要添加一个循环即可。
在绘制完一条科赫曲线后,将海龟向右旋转120度,绘制第二条科赫曲线;绘制完后,再旋转120度,绘制第三条。再相应的修改下画笔、画布的参数,一个科赫雪花就绘制完成啦~
【为了美观一点,使用 turtle.screensize()函数将画布背景设置为黑色,使用turtle.pencolor(“white”)将画笔颜色设置为白色】
def main():
turtle.screensize(600, 600, "black")
turtle.pencolor("white")
turtle.penup()
turtle.goto(-150, 150)
turtle.pendown()
turtle.pensize(2)
for i in range(3):
koch(300, 3)
turtle.right(120)
完整代码如下:
import turtle
def koch(length, n):
if n == 0:
turtle.fd(length)
else:
for angle in [0, 60, -120, 60]:
turtle.left(angle)
koch(length / 3, n - 1)
def main():
turtle.screensize(600, 600, "black")
turtle.pencolor("white")
turtle.penup()
turtle.goto(-150, 150)
turtle.pendown()
turtle.pensize(2)
for i in range(3):
koch(300, 3)
turtle.right(120)
main()
turtle.hideturtle()
turtle.done()
科赫雪花小程序的打包(带图标)
阿里巴巴矢量库:https://www.iconfont.cn/
先下载一个你想用来做图标的图片(ico格式)。可以在阿里矢量库里下载图片时,直接将扩展名改成ico,也可以下载png格式的图片,再将png图片转换成ico格式。
【注意:要下载128x128像素大小的图片】
将下载的图片存放到需要打包的程序的同一目录下,然后windows键+R键打开cmd命令,j进入存放程序的目录,输入:
pyinstaller -F -i 图标文件名.ico 程序文件名.py
或者
pyinstaller -i 图标文件名.ico -F 程序文件名.py
这样就是打包成功了
本人最初打包的时候,报错 “struct.error: unpack requires a string argument of length 16”,就是因为图标的尺寸问题,改成128x128像素大小的就ok了
然后到存放程序的目录下找到dist文件夹,打开它就可以看到生成的带图标的程序了!
怎样将png图片转换成ico格式?
https://jingyan.baidu.com/article/5bbb5a1bea704313eba17931.html
最后
以上就是大力绿茶为你收集整理的Python学习笔记--科赫雪花的绘制科赫雪花:科赫雪花小程序的打包(带图标)的全部内容,希望文章能够帮你解决Python学习笔记--科赫雪花的绘制科赫雪花:科赫雪花小程序的打包(带图标)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复