当前位置: 首页>>代码示例>>Python>>正文


Python State.protected方法代码示例

本文整理汇总了Python中State.State.protected方法的典型用法代码示例。如果您正苦于以下问题:Python State.protected方法的具体用法?Python State.protected怎么用?Python State.protected使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在State.State的用法示例。


在下文中一共展示了State.protected方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: Field

# 需要导入模块: from State import State [as 别名]
# 或者: from State.State import protected [as 别名]
class Field():
    # global x,y indexes
    def __init__(self, x, y):
        self.x = x
        self.y = y
        self.state = State()

    def generate_bacterias(self):
        bacterias = []
        if self.state.infected():
            bacterias.append(Bacteria(self.x - 1, self.y))
            bacterias.append(Bacteria(self.x + 1, self.y))
            bacterias.append(Bacteria(self.x, self.y - 1))
            bacterias.append(Bacteria(self.x, self.y + 1))
            assert len(bacterias) == 4
        return bacterias

    def can_get_bacteria(self, bacteria):
        return bacteria.target_x == self.x and bacteria.target_y == self.y

    def apply_bacteria(self, bacteria):
        if bacteria.target_x != self.x or bacteria.target_y != self.y:
            raise Exception("Field (" + str(self.x) + "," + str(self.y) + " cannot get bacteria for cell: (" + str(
                bacteria.target_x) + "," + str(bacteria.target_y))
        elif self.state.protected():
            return False
        elif self.state.is_healthy():
            if random.random() < bacteria.chance:
                self.state.infect()
                return True
        return False

    def __repr__(self):
        return str(self)

    def __str__(self):
        return "Field(" + str(self.x) + "," + str(self.y) + "," + str(self.state) + ")"

    def update_state(self):
        self.state.update_state()

    def can_infect_others(self):
        return self.state.infected()

    def readable_state(self):
        return str(self.state)
开发者ID:gmiejski,项目名称:OR_python,代码行数:48,代码来源:Field.py


注:本文中的State.State.protected方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。