基本功能是有一架飞机,可以通过键盘控制使其左右移动,并且喷射子弹。在飞机上方有一群外星人,也在左右移动着,被子弹击中的外星人消失。效果图如下:设计思路:1)Ship类,Bullet类,Alien类分别表示飞船,子弹,外星人的基本信息,例如飞机和外星人图像存储位置,生成子弹的位置。ship.pyimportpygameclassShip():"""docstringforship"""def__init__(self,ai_settings,screen):
系统 2019-09-27 17:51:16 1850
每天换一个壁纸,每天好心情。#-*-coding:UTF-8-*-from__future__importunicode_literalsimportImageimportdatetimeimportwin32gui,win32con,win32apiimportrefromHttpWrapperimportSendRequestStoreFolder="c:\\dayImage"defsetWallpaperFromBMP(imagepath):k=wi
系统 2019-09-27 17:51:14 1850
测试题一、1、程序可以响应的两种事件分别是键盘事件和鼠标事件。2、处理事件的代码称为事件处理器3、Pygame使用KEYDOWN事件来检测按键是否按下。4、Pos属性会指出事件发生时鼠标所在的位置5、要为用户事件得到下一个可用的事件编号,可以使用pygame.NUMEVENTS。6、要创建一个定时器,可以使用pygame.time.set_timer()。7、要在Pygame窗口中显示文本,可以使用font对象。8、使用字体对象有3个步骤:创建一个字体对象
系统 2019-09-27 17:51:09 1850
漫谈如果作为一个Python入门,不了解Python装饰器也没什么,但是如果作为一个中级Python开发人员,如果再不对python装饰器熟稔于心的话,那么可能并没有量变积累到质变。我以前也看过很多讲python装饰器的文章,但是都是看了就忘。一方面是没有做太多的练习,二是对它的领会不是很深。希望引以为戒!!!郑传装饰模式如果你了解Java,你肯定听过装饰器模式。在面向对象中,装饰模式指:动态地给一个对象添加一些额外的职责。就增加一些功能来说,装饰模式比生
系统 2019-09-27 17:51:05 1850
不管是啥语言都离不开加减乘除这些算法,但是在Python里面你知道这些符号代表什么运算吗?“/”这个是除法运算,那么这个“//”呢?“*”这个是乘法运算,那么这个“**”呢?下面来一一介绍下。“//”运算除法运算符是“/”,这个人人皆知道,但是这个二元运算符“/”求出来的结果都是取决于操作数本身的,比如:复制代码代码如下:20/3620/3.06.66666666666666720.0/36.66666666666666720.0/3.06.6666666
系统 2019-09-27 17:51:01 1850
计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,可以用if语句实现:age=20ifage>=18:print'yourageis',ageprint'adult'print'END'注意:==Python代码的缩进规则==。具有相同缩进的代码被视为代码块,上面的3,4行print语句就构成一个代码块(但不包括第5行的print)。如果if语句判断为True,就会执行这个代码块。
系统 2019-09-27 17:51:01 1850
python批量添加的button使用同一点击事件根据传递的参数进行区分。defclear_text():print'我只是个清空而已'defclear_text(index):print'我只是个清空而已'+str(index)button=Button(framet_title,text='清空',command=clear_text)这样去设置,单个按钮对应单个点击事件没有问题的如果你是foriinRange(10):button=Button(fr
系统 2019-09-27 17:50:34 1850
下面是十个Python中很有用的贴士和技巧。其中一些是初学这门语言常常会犯的错误。注意:假设我们都用的是Python31.列表推导式你有一个list:bag=[1,2,3,4,5]现在你想让所有元素翻倍,让它看起来是这个样子:[2,4,6,8,10]大多初学者,根据之前语言的经验会大概这样来做bag=[1,2,3,4,5]foriinrange(len(bag)):bag[i]=bag[i]*2但是有更好的方法:bag=[elem*2foreleminba
系统 2019-09-27 17:50:33 1850
协程是什么我们已经做过不少爬虫项目,不过我们爬取的数据都不算太大,如果我们想要爬取的是成千上万条的数据,那么就会遇到一个问题:因为程序是一行一行依次执行的缘故,要等待很久,我们才能拿到想要的数据。既然一个爬虫爬取大量数据要爬很久,那我们能不能让多个爬虫一起爬取?这样无疑能提高爬取的效率,就像一个人干不完的活儿,组个团队一起干,活一下被干完了。这是一个很好的思路——让多个爬虫帮我们干活。但具体怎么用Python实现这事呢?我们可以先别急着想怎么实现这件事,后
系统 2019-09-27 17:50:16 1850
微线程领域(至少在Python中)一直都是StacklessPython才能涉及的特殊增强部分。关于Stackless的话题以及最近它经历的变化,可能本身就值得开辟一个专栏了。但其中简单的道理就是,在“新的Stackless”下,延续(continuation)显然是不合时宜的,但微线程还是这个项目存在的理由。这一点很复杂……刚开始,我们还是先来回顾一些内容。那么,什么是微线程呢?微线程基本上可以说是只需要很少的内部资源就可以运行的进程�D并且是在Pyth
系统 2019-09-27 17:49:59 1850