self.screen=screen有什么意义?等号右边的creen又等于什么?

self.screen=screen有什么意义?等号右边的creen又等于什么?

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学,你好。同学的理解是正确的。

经过封装后,self.screen = pygame.display.set_mode((self.width, self.height))是绘制的屏幕对象,self.screen=screen中等号的右边screen来源于此,在PlaneWar中调用OurPlane传入数据,而OurPlane继承了Plane,因此调用了Plane里的__init__方法,(截图中的OurPlane和同学所说的MyPlane是一个意思)如:

http://img1.sycdn.imooc.com//climg/5ee0a1c90959aed508740154.jpg

http://img1.sycdn.imooc.com//climg/5ee0a30109f5a9c805630315.jpg

祝学习愉快~

好帮手慕笑蓉 2020-06-10 16:35:42

同学,你好。self.screen=screen将等号左边的内容赋值给实例属性,之后可通过调用实例属性实现对screen是调用,等号右边的screen是绘制的屏幕对象screen = pygame.display.set_mode((width,height))。

如果解决了你的疑惑,请采纳,祝学习愉快~ 


  • 提问者 江民川 #1
    screen = pygame.display.set_mode((width,height))这句话我只在PlaneWar类里(继承object)写过,而self.screen=screen是写在Plane类(这个类是继承pygame.sprite.Sprite)里的。我没看懂是怎么引用到的
    2020-06-10 16:40:18
  • 提问者 江民川 #2
    在PlaneWar类里的实例化方法中,我看到了self.my_plane = MyPlane(self.screen, speed = XXXX),这里的self.screen是不是就是pygame.display.set_mode((width,height))?然后这个self.screen在MyPlane(继承自Plane)里指的又是__init__(self, screen, speed = None)里的screen,老师,是不是这么个套用关系?
    2020-06-10 16:46:52
提问者 江民川 2020-06-10 16:32:35

我这是上完了这一章的课写完的代码,我翻遍了所有代码,只在battle文件里看到了screen等于什么http://img1.sycdn.imooc.com//climg/5ee09a06099814e506160640.jpg

但这个PlaneWar类和Plane类没有互相引用吧?难道Plane里等号右边的screen是个特有名词?

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师