基于Python如何绘制流星雨效果
基于Python如何绘制流星雨效果
今天小编给大家分享一下基于Python如何绘制流星雨效果的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
浪漫的流星雨展示
4 Python代码
defbgpic(self,picname=None):"""Setbackgroundimageorreturnnameofcurrentbackgroundimage.Optionalargument:picname--astring,nameofagif-fileor"nopic".Ifpicnameisafilename,setthecorrespondingimageasbackground.Ifpicnameis"nopic",deletebackgroundimage,ifpresent.IfpicnameisNone,returnthefilenameofthecurrentbackgroundimage.Example(foraTurtleScreeninstancenamedscreen):>>>screen.bgpic()'nopic'>>>screen.bgpic("landscape.gif")>>>screen.bgpic()'landscape.gif'"""ifpicnameisNone:returnself._bgpicnameifpicnamenotinself._bgpics:self._bgpics[picname]=self._image(picname)self._setbgpic(self._bgpic,self._bgpics[picname])self._bgpicname=picname#coding:utf-8importpygameimportosimportsysfrompygame.localsimport*os.chdir('E:/星空下的告白')os.getcwd()pygame.init()pygame.mixer.init()pygame.mixer.music.load("星空之美.mp3")#pygame.mixer.music.set_volume(0.4)pygame.mixer.music.play()bg_size=width,height=300,200bg_rgb=(255,255,255)screen1=pygame.display.set_mode(bg_size)pygame.display.set_caption("告白音乐")clock=pygame.time.Clock()pause_rect=pause_image.get_rect()print(pause_rect.width,pause_rect.height)pause_rect.left,pause_rect.top=(width-pause_rect.width)//2,(height-pause_rect.height)//2fromturtleimport*fromrandomimportrandom,randintos.chdir('E:星空下的告白')screen=Screen()width,height=900,700screen.setup(width,height)screen.title("浪漫的流星雨")screen.bgcolor("black")screen.mode("logo")screen.delay(0)printer=Turtle()printer.hideturtle()printer.penup()printer.color('red')printer.goto(-100,-350)printer.write("宇宙广阔(弱水三千)""\n\n",move=True,align="left",font=("Italic",30,"bold"))printer.goto(-50,-400)printer.write("只寻你一颗!(只取一瓢饮!)\n\n",move=True,align="left",font=("Italic",30,"bold"))t=Turtle(visible=False,shape='circle')t.pencolor("white")t.fillcolor("white")t.penup()t.setheading(-90)t.goto(width/2,randint(-height/2,height/2))stars=[]foriinrange(300):star=t.clone()s=random()/3ifs>0.01ands<0.03:star.pencolor("black")star.fillcolor("black")elifs>0.03ands<0.04:star.pencolor("lightcoral")star.fillcolor("lightcoral")elifs>0.05ands<0.1:star.pencolor("green")star.fillcolor("green")elifs>0.15ands<0.16:star.pencolor("yellow")star.fillcolor("yellow")elifs>0.19ands<0.2:star.pencolor("red")star.fillcolor("red")elifs>0.21ands<0.22:star.pencolor("purple")star.fillcolor("purple")elifs>0.29ands<0.3:star.pencolor("darkorange")star.fillcolor("darkorange")elifs>0.31ands<0.32:star.pencolor("red")star.fillcolor("yellow")elifs>0.32ands<0.33:star.pencolor("yellow")star.fillcolor("white")star.shapesize(s,s)star.speed(int(s*30))star.setx(width/2+randint(1,width))star.sety(randint(-height/2,height/2))#star.showturtle()stars.append(star)i=0pause=FalsewhileTrue:i+=0forstarinstars:star.setx(star.xcor()-3*star.speed())ifstar.xcor()<-width/2:star.hideturtle()star.setx(width/2+randint(1,width))star.sety(randint(-height/2,height/2))star.showturtle()ifi>=100:break#查找队列事件foreventinpygame.event.get():#查找点击关闭窗口事件ifevent.type==QUIT:sys.exit#查找鼠标左右击事件ifevent.type==MOUSEBUTTONDOWN:ifevent.button==1:pause=notpauseifevent.button==3:pause=notpauseifevent.type==KEYDOWN:ifevent.key==K_SPACE:pause=notpausescreen1.fill(bg_rgb)ifpause:pygame.mixer.music.pause()screen1.blit(pause_image,pause_rect)else:pygame.mixer.music.unpause()screen1.blit(play_image,pause_rect)pygame.display.flip()clock.tick(30)
以上就是“基于Python如何绘制流星雨效果”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注恰卡编程网行业资讯频道。
推荐阅读
-
python(中无效的十进制怎么解决 python怎么转换进制)
python怎么转换进制?Python执行二进制转换:1.十进制到二进制(bin)首先,让让我们看看如何将十进制转换成二进制。我...
-
python怎么清除完全相同的行(python splte如何分隔有多个相同符号的str)
pythonsplte如何分隔有多个相同符号的str?str你的string内容str_(相同的符号)执行完了以后再在相同符号的...
-
python(编程控制电脑关机 如何控制电脑关机)
如何控制电脑关机?可以在电脑的运行窗口中输入输入公式,给电脑可以设置自动关机。1.按开快捷键winr然后打开运行窗口。2.在运行窗...
-
python中的特殊标识符(python 中 标识符中可以有逗号吗)
python中标识符中可以有逗号吗?在python语言中合法的标识符是字母、数字以及_,所以我合法的标识符中肯定不能有逗号if...
-
python(excel 提取数据写入新表 python导入excel数据找不到工作簿)
python导入excel数据找不到工作簿?我可以导入数据后找不到工作,不是因为他的工作没有被转移。什么软件可提取并合并Exce...
-
python中字典定义的四种方法(python global关键字的用法详解)
pythonglobal关键字的用法详解?global标志实际上是目的是提示python讲解器,说被其修饰的变量是全局变量。这样...
-
python(array用法 python如何对两个数组做差处理)
python如何对两个数组做差处理?Python中的列表中的元素肯定不能真接相加,减。t最佳的位置的是将列表装换成Python中的...
-
python多行注释符号怎么表示
python多行注释符号怎么表示这篇文章主要介绍“python多行...
-
python支持的操作系统是什么
python支持的操作系统是什么这篇文章主要介绍“python支持...
-
python如何判断列表为空
python如何判断列表为空这篇文章主要介绍“python如何判断...