飞机大战斗

  • 导入模块的三种方式

import pygame
from 模块名 import *(代表所有)
from 模块名 import 模块里定义的函数名
*号在同时调用两个模块的时候 里面有相同的函数时 后者会给前者覆盖掉

  • 在pygame这前安装了个pip3
#安装pygame
sudo pip3 install pygame
#验证安装
python3 -m pygame.examples.aliens

  • 创建的精灵组
def __create_sprites(self):
    bg1=BackGroundSprite()
    bg2=BackGroundSprite(True)
    self.enemy_group=pygame.sprite.Group()#创建敌机精灵组
    self.bg_group=pygame.sprite.Group(bg1,bg2)

    self.hero=Hero()#英雄组
    self.hero_group=pygame.sprite.Group(self.hero)

私有属性添加getter和setter方法

class siyou(object):
def __init__(self):
self.__money = 0

def getsiyou(self):
return self.__money

def setsiyou(self, value):
if isinstance(value, int):
self.__money = value
else:
print("error:不是整型数字")

  • 结果
In [1]: from get_set import siyou

In [2]:

In [2]: a = siyou()

In [3]:

In [3]: a.money
Out[3]: 0

In [4]: a.money = 100

In [5]: a.money
Out[5]: 100

In [6]: a.getsiyou()
Out[6]: 100

==和is

  • is是比较两个应用是否指向了一个对象
  • ==是比较两个对象是否相等
a=[1,2,3]
b=a
a==b
True

a is b
True

import copy
c=copy.deepcopy(a)
a==c
True

a is c
False

深拷贝和浅拷贝

  • 深拷贝

深拷贝是对于一个对象所有层次的拷贝(递归)

13012396-14828ff4a56c3d1a.png
13012396-768bfa54cad0c454.png
  • 浅拷贝

浅拷贝是对一个对象的顶层拷贝
通俗的理解就是:拷贝了引用,并没有拷贝内容

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,792评论 1 32
  • 简思 卍 换思 卍 同思 因 越来越大 被 大化了吗 ? ...
    瑶梦幻作诗吧阅读 571评论 2 4
  • 最近逛知乎发现了一篇文章 文章大体的内容是讲学校里,一群学生对一个学生长时间欺负,班主任老师根本管不了,向广大网友...
    树洞少年阅读 460评论 0 0
  • 大年三十熬一宿,毛毛姐姐早就上床了,小贵宝熬到了9点多也终于说妈妈我要喝奶睡觉了! 开了两个多小时车,吃了两场年夜...
    小火柴麻麻阅读 120评论 0 3

友情链接更多精彩内容