首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

小甲鱼《零基础学习Python》课后笔记(三十三):异常处理——你不可能总是对的2

3.except如果不带任何异常类,Python会捕获所有(try语句块内)的异常并统一处理,但小甲鱼建议这么做,你知道为什么?...4.如果异常发生在成功打开文件,Python跳到except语句执行,并没有执行关闭文件的命令(用户写入文件的数据就可能没有保存起来),因此我们需要无论如何(就算出了异常退出)文件也要被关闭,我们应该怎么做呢...可以使用try-finally语句,finally语句里f.colse()对文件进行关闭保存。 5.请恢复以下代码中马赛克挡住的内容,使得程序执行可以按要求输出。 ?...动动手 0.还记得我们额小游戏?只要用户输入非整形数据,程序立刻就会蹦出不和谐的异常信息然后奔溃。请使用刚学的异常处理方法修改以下程序,提高用户体验。...break 这里加了2个break,主要是except语句处理不会退出程序,而且还会报错NameError: name ‘number’ is not defined,所以做了改进。

63230

游戏开发如此简单?我直接创建了一个游戏场景【python 游戏实战 02】

小媛:开…,不开心,才创建一个黑框框我能有啥开心的。 小C:话不能这样说,毕竟你已经开始可以创建一个黑框框了。 小媛:,不做完游戏我不开心。 小C:行,那这一节就让你创建一个场景吧。...游戏中,等待其实是有一个主循环,一直对游戏中发生的事情进行监听。 小媛:所以我们就是需要在下面价格循环哟?...pygame 中的 QUIT 就表示一个退出的意思,如果是这个事件点击到了有关退出的按钮,那么就执行 exit()。exit() 可退出整个程序。 小媛:唔,我懂了,我运行出来了。...小C:是的,其实哪一个代码少了一个很关键的内容你知道是啥? 小媛:我。。。忘记了。 小C:少了一个屏幕更新,我们应该在每次循环的时候都应该刷新屏幕,因为我们每次都需要绘制一些游戏元素到这个窗口中。...event.type==pygame.QUIT: exit() screen.blit(bg,(0,0)) pygame.display.update() 小媛:我点了右上角确实退出

57750
您找到你想要的搜索结果了吗?
是的
没有找到

【Pygame 第3课】 游戏中的事件

有人问,为什么突然讲游戏了?有人问,为什么继续讲python的基础?有人问,为什么不讲爬虫?有人问,为什么不讲算法?…… 因为有很多内容,每一块都有想听的人。因为同时不可能推送很多内容。...因为我喜欢游戏开发,制作一款游戏的过程很有趣。我会尽量论坛上补充更多方面的内容。微信上的推送有天生的限制,不能让所有人满足,大家见谅。 上次课讲了游戏最根本的框架,说到每次循环中会接收玩家的操作。...这是游戏中很重要的一个环节--事件响应。 玩家的操作会触发程序中的事件,常见的事件包括:关闭程序、按下键盘、移动鼠标、按下鼠标等等。...还记得上次课中的这段代码: for event in pygame.event.get(): if event.type == pygame.QUIT: #接收到退出事件后退出程序...for循环中新增一段if语句: if event.type == pygame.MOUSEBUTTONDOWN: #接收到鼠标按下事件更换背景 background = pygame.image.load

1.3K70

免费的虚拟机软件 crossover兼容软件好用 crossover玩游戏时没图像

crossover兼容软件是可以苹果电脑中下载安装windows应用程序的软件,crossover兼容软件好用?...一、crossover兼容软件好用1.下载资源丰富crossover兼容软件是好用的,首先crossover好似一款windows应用程序商店,有海量的软件下载资源。...部分软件crossover如果以全屏模式启动,可能会造成黑屏,只需要退出全屏模式便可恢复。...图4:windows应用程序全屏模式crossover运行游戏时没图像,或出现黑屏,我们可以使用快捷键【Command-Option-R】来恢复显示,或者使用【Command-Q】强制退出应用程序,再重启应用程序...三、总结crossover玩游戏时没图像,多数是由于启动的软件为全屏模式,通过快捷键【Command-Option-R】来恢复显示,或者使用【Command-Q】强制退出应用程序,再次启动即可。

31310

macbook系统清理软件推荐CleanMyMac X

CleanMyMac X 功能上还是要强悍许多。...比如退出卡死的程序、应用程序重置、查找并删除 DMG 文件、时间机器瘦身、系统偏好设置扩展面板清理等功能都非常实用。...CleanMyMac X软件主界面上也可以一探究竟:CleanMyMac X 功能上还是要强悍许多。...比如退出卡死的程序、应用程序重置、查找并删除 DMG 文件、时间机器瘦身、系统偏好设置扩展面板清理等功能都非常实用。...问:Mac清理软件会让我的Mac慢下来?答:很多清理软件会试图加入到你的“登录项”中,这的确会造成给处理器带来一点额外的负担,但如果用户希望清理软件自启动,则将其从“登录项”中移除即可。

96720

【六一儿童节】回忆一下“孩子们的游戏”!(码农版)

(今天我们大家都是小孩子),下面就让我们来一起回顾一下孩子们的游戏程序员版) 程序员版的儿童小游戏 今天,我们来回忆一下程序员版的儿童小游戏。...(注:小朋友的编号是从0到n-1) 解决方案 每次挑出一个小朋友,从当前位置再计数。...如果只求最后一个报数胜利者的话,其实这是个约瑟夫环问题,可以模拟游戏过程推出数学公式解: 问题描述:n个人(编号0~(n-1)),从0开始报数,报到(m-1)的退出,剩下的人继续从0开始报数。...,假如我们知道这个子问题的解: 例如x是最终的胜利者,那么根据上面这个表把这个x变回去刚好就是n个人情况的解?...令f[i]表示i个人玩游戏报m退出最后胜利者的编号,最后的结果自然是f[n] 递推公式: f[1]=0; f[i]= (f[i-1]+ m)%n; (i>1) 代码实现 C++ class Solution

37230

socket是并发安全的

赚钱还好,一旦游戏赚钱,就会遇到各种攻击。 你猜《羊了个羊》最火的时候为啥老是崩溃? 假设一个游戏服务器能承载4k玩家,一旦服务器遭受直接攻击,那4k玩家都会被影响。 这攻击的是服务器?...已知多个用户共用同一条连接。 现在多个用户要发数据,也就是多个用户线程需要写同一个socket_fd。 那么,socket是并发安全的?能让这多个线程同时并发写?...A和B线程同时执行send(),A先抢到锁,此时发送缓冲区就剩1个数据包的位置,那发了"1",然后发送缓冲区满了,A线程退出(非阻塞),当发送缓冲区腾出位置,此时AB再次同时争抢,这次被B先抢到了,B...因此多个线程同时读写,也就不会有TCP的问题。 所以,可以多个线程同时读写同一个udp socket。 但就算可以,我依然建议大家这么做。...大家可以评论区里,叫我一靓仔? 别说了,一起知识的海洋里呛水吧

1.7K10

5天赚十亿!纯CC++打造“西虹市首富”

银行存款有多少心里没点数? 那这里我就不服了,梦想还是要有的,万一有一天实现了呢?并且今天,小编就要介绍两个方法,让你成为亿万富翁!...程序包含取款、查询、转账、修改密码、存款、退出。新增查找修改独立分开作为子函数,其余作为switch语句中的一部分,几个模块通过switch语句联系。...嗯,根据测试呢,一次5千只需要转二十万次,不吃喝不休息大约5天就可以赚10个亿了,真金白银哦,可凭枪支弹药前去各大银行柜台领取~ 小编给大家推荐一个学习氛围超好的地方,C/C++交流企鹅裙:870963251...,打造「开挂的人生」 无论《王者荣耀》还是《绝地求生》外挂都是可以制作的,这里先以游戏《植物大战僵尸》为例: 下面是部分思路及代码 每个程序打开数据的内存地址都会改变,但是其静态基址和偏移不会变,所以关闭游戏再启动...,界面编程中去锻炼自己的逻辑思维能力等等。

63930

python029_ until_直接跳转到_unt_breakpoint_断点函数

最真实的解谜游戏 debug是 我见过最真实的 解谜游戏 了 比 剧本杀 好玩多了 一步步地分析 找不到凶手的 时候 需要冷静地分析 找到凶手的 时候 那种快乐太真实了!!!...有快点的方法? 可以直接跳到某一行?...添加图片注释,超过 140 字(可选) q命令退出pdb 然后去编辑guido.py 指定 断点位置 第四行添加了一个函数 breakpoint() 添加一个断点 断点的位置 不一定是...到了断点(breakpoint) 断点位置 是写到程序里的 再继续 再continue一下 就直接又绕道开头了 一个小笑话 程序公司写代码 老婆 要他回来 不回来 就离婚 结果...debug的时候 看不到 断点breakpoint 位置 可以 调试过程中 动态地设置 或者 取消断点

6110

这个点,面试中答出来很加分!

赚钱还好,一旦游戏赚钱,就会遇到各种攻击。 你猜《羊了个羊》最火的时候为啥老是崩溃? 假设一个游戏服务器能承载4k玩家,一旦服务器遭受直接攻击,那4k玩家都会被影响。 这攻击的是服务器?...已知多个用户共用同一条连接。 现在多个用户要发数据,也就是多个用户线程需要写同一个socket_fd。 那么,socket是并发安全的?能让这多个线程同时并发写?...A和B线程同时执行send(),A先抢到锁,此时发送缓冲区就剩1个数据包的位置,那发了"1",然后发送缓冲区满了,A线程退出(非阻塞),当发送缓冲区腾出位置,此时AB再次同时争抢,这次被B先抢到了,B...单线程读 socket_fd 写入加锁队列 读写UDP Socket是线程安全的? 聊完 TCP,我们很自然就能想到另外一个传输层协议 UDP,那么它是线程安全的?...因此多个线程同时读写,也就不会有 TCP 的问题。 所以,可以多个线程同时读写同一个UDP socket。 但就算可以,我依然建议大家这么做。

43420

Python猜数字小游戏

需求:使用Python代码实现猜数字小游戏 通过代码生成一个随机的整数(随机整数的范围在1~20之间) 让用户输入一个整数(输入非整数时需给出提示、输入的整数不在1~20范围内时需给出提示) 程序提示用户输入的整数是高了还是低了...直到用户猜中这个数字(即用户输入的整数与系统一开始随机生成的整数一致) 游戏结束(可以选择退出还是继续游戏,且中途可以选择退出) 提示:random模块的randint函数能够帮助我们生成随机整数。...程序提示用户的输入是高了还是低了, # 直到用户猜中这个数字, 游戏结束. # 提示, random模块的randint函数能够帮助我们生成随机整数。...print('请输入一个1-20的整数(输入q/Q/666可直接退出游戏):') while is_quit !...is_quit = input('您要退出游戏?y/n :') while is_quit != 'y' and is_quit !

1K30

游戏开发面试题(去游戏公司当程序员需要会什么)

今天说一说游戏开发面试题(去游戏公司当程序员需要会什么),希望能够帮助大家进步!!! (网上找的) 原公司是做什么工作的?原公司的产品是哪方面的? 对C++应用到什么程度? 匈牙利命名法?...开发程序的时候经常查MSDN? MFC可以? DC是什么? 内存泄露? 什么是用户界面线程和工作线程? 多线程、数据保护? 工作线程崩溃有什么现像?会有中断信息提示框? 线程间消息的发送方法?...做过2D游戏?帧计算与时间计算有什么不同? 做过3D游戏? 碰撞检测怎么做? 对像数组是否用new产生? 为自己的游戏编写过debug作弊功能? 什么是游戏引擎?你认为游戏引擎应该分几个模块?...用MFC和Win32编写的窗口程序有什么不同?各自的好处是什么? 不影响客户端编写人员的开发效率的情况下, 如何减少服务器与客启端之间的网络传输? 把多个文件打成一个文件包应该怎么做?...一个带有若干子窗口的MFC窗口接收到一个鼠标消息, 这条消息的传递流程是怎么样的? 消息传递中途会被截断(继续传递)

85210

python0081_ESC键进化历史_键盘演化过程_ANSI_控制序列_转义序列_CSI

字(可选)ASR33中的ALT MODE 是 今天的ESC键????​...一般左上角用来 退出当前应用/游戏跳出菜单​添加图片注释,超过 140 字(可选)上图esc 1 的左下Q 的左边esc可以 从当前的纯文字标准输出流里面逃(escape)出来进行控制信息的传输键盘的进化过程...玩一些terminal上面的游戏时 可以用 esc 退出游戏环境 进入菜单进行设置、存盘、读档、退出之类的操作​添加图片注释,超过 140 字(可选)知道 什么时候退 比知道 怎么玩更重要键盘还没有...,超过 140 字(可选)不同的形态都可以 用来转义?...25h 显示光标光标的自由 输出字符的位置 以前是固定的仿佛被牢牢锁住​添加图片注释,超过 140 字(可选)真的能 挣脱固定位置的锁链 ?​添加图片注释,超过 140 字(可选)好期待?

20230

中小型手游团队要不要选公有云平台,如何选?

4 要一直使用? 5 如果决定退出了,如何退出? 下面逐条讨论: 1 中小型手游团队要不要选公有云平台?...安全性一方面是稳定性如何,一方面是自己的游戏程序安全?...稳定性方面,虚拟机是宿主机上面,宿主机故障,虚拟机肯定要宕机,如果做了高可用,会自动切换到其他宿主机上,如果没有,恢复需要一段时间; 游戏程序安全,从技术上,只要愿意,云主机运营商拿走你的程序是轻而易举的...,就看他们内控做的如何,从这个角度将,尽量选一些规模大,正规的云主机运营商,同时自己程序上做一些加密和认证,以防万一;    3) 云主机的可用性?...选择了云主机,硬件、网络都不用自己维护,但是自己业务相关的监控,必须自己完成,比如游戏人数,进程等,这个只能依靠自己,而且必须做好; 4 如果选择了,要一直使用

1.3K30

python开发_自己开发的一个小游戏

看完游戏的运行情况,你可能对游戏有了一定了了解: #运行游戏,玩家首先要进行语音的选择,1选择英语,2选择汉语,其他则默认选择英语 #根据玩家选择的语音,进入不同的语音环境 #游戏规则:玩家输入一个0...#退出游戏游戏会随着打印信息的完成提示退出游戏 代码部分: 1 #运行游戏,玩家首先要进行语音的选择,1选择英语,2选择汉语,其他则默认选择英语 2 #根据玩家选择的语音,进入不同的语音环境...5 #退出游戏游戏会随着打印信息的完成提示退出游戏 6 language_option = """\ 7 Language: Choose the language for System[...: 优化了print_info()方法,增加了询问玩家是继续玩功能..详细请参看代码 1 #运行游戏,玩家首先要进行语音的选择,1选择英语,2选择汉语,其他则默认选择英语 2 #根据玩家选择的语音...5 #退出游戏游戏会随着打印信息的完成提示退出游戏 6 language_option = """\ 7 Language: Choose the language for System

74120

Python学习手册--第四部分(用户输入和while循环)

获取用户输入,Python会将其存储一个变量中,例如下面的程序: age = input('请输入你的年龄:') print(age) 使用int() 来获取数值输入 当我们使用input()进行输入时...通过标记退出while循环 刚才的例子中,我们让程序满足指定条件时就执行特定的任务,但是更复杂的程序中,有多方面的因素会导致程序停止。...比如在某些游戏中,当玩家血量为0时,或者未完成任务时均为游戏失败,在这种情况下,该怎么办呢?...退出循环 要立即退出while循环,可使用break语句,break 语句用于控制程序流程,可使用它来控制哪些代码行将执行,哪些代码行执行,从而让程序按你的要求执行你要执行的代码。...删除包含特定值的所有列表元素 之前的列表学习中,我们知道通过remove()方法可以删除列表中指定的元素,但是,如果列表中重复出现我们需要删除的元素,remove()方法还有效?

1.9K30

程序年底重磅更新,小游戏上线,最强入口也来了!

除此之外,用户点击图标最后的“···”还能直接切换到小程序历史列表。 不仅缩短了用户切换的时间,还增加小程序使用的机会。主界面的五大小程序中,大多是按使用的频次和最近使用时间来进行排序的。...三、增加“圆点”按钮 点击“圆点”可退当前小程序 进入小程序列表,右上角出现的“圆点”按钮,点击就可以退出当前小程序,从哪进入,便从哪退出。...四、小程序支持新类目--小游戏 微信刚刚更新的 6.6.1 版本突然开放了小游戏,微信启动页面还重点推荐了小游戏「跳一跳」。...为了推广新的小程序游戏平台,腾讯还一次性推出了数十个小游戏以及移植版本。其中包括「跳一跳」,以及多款棋牌类、休闲类小游戏。 (图片来源:极客公园) 曾有第三方数据报告显示:工具类小程序数量最多。...今天,小程序对小游戏的大力推广,这个格局会不会发生改变,游戏类小程序会是强有力的竞争者? 往更大的方向看,对游戏类 App,页游等势必也会造成更大的冲击。

95960

2023 跟我一起学设计模式: 享元模式 (Cache)

大量的子弹、 导弹和爆炸弹片会在整个地图上穿行, 为玩家提供紧张刺激的游戏体验。 开发完成, 你推送提交了最新版本的程序, 并在编译游戏将其发送给了一个朋友进行测试。...尽管该游戏在你的电脑上完美运行, 但是你的朋友却无法长时间进行游戏游戏总是会在他的电脑上运行几分钟后退出研究了几个小时的调试消息记录, 你发现导致游戏退出的原因是内存容量不足。...当玩家游戏中鏖战进入高潮的某一时刻, 游戏将无法剩余内存中载入新建粒子, 于是程序退出了。...该方法中, 容器类只需包含一个数组。 稍等! 这样的话情景对象数量不是会和采用该模式时的对象数量一样多? 的确如此, 但这些对象要比之前小很多。...最初程序需要在多个对象中存储相同数据, 而现在仅需几个享元对象中保存数据, 然后作为情景的 树对象中连入享元即可。

15620

零基础究竟怎样才可以学好C语言?多年开发老司机告诉你答案!

Hello World程序虽然简单,但“麻雀虽小,五脏俱全”,它具备C程序的基本特征,功能再强大的C程序,也具有这些基本特征,所以说你能够运行这个程序就已经入门了。 入门,我能学好吗?...一个刚刚学走路的幼儿,如果它能够甩开父母的扶持,成功地迈出了第一步,虽然以后较长的时间内走地蹒跚,你会怀疑它学不会走路,走不好路?...入门,要培养自己学习C语言的兴趣,如果有了兴趣,即使别人看来你学得再苦再累,你也会乐而疲地学,就像打游戏,没有老师教,就自己摸索,通宵达旦地打游戏,也不感觉累,而且经常和同学交流打游戏的经验和体会...,打游戏的技术会提高得不快?...软件中有50多个典型的源程序,研究它的实现方法,提高自己的程序设计能力。 第六步、研究课程设计源成序,提高C语言程序设计能力和调试较大程序的能力。

66400
领券