corrigir tipo de atributo de classe 'personalidade' para incluir 'None'
This commit is contained in:
@ -1,10 +1,11 @@
|
||||
# from types import NoneType
|
||||
from types import NoneType
|
||||
import modules.estrategia as ModEstrategia
|
||||
|
||||
|
||||
class Agente:
|
||||
# traços de personalidade
|
||||
personalidade: dict[str, float] = {
|
||||
personalidade: dict[str, float] | None = {
|
||||
"amabilidade": 0.0,
|
||||
"retaliacao": 0.0,
|
||||
"perdao": 0.0,
|
||||
@ -20,8 +21,7 @@ class Agente:
|
||||
# definir estrategia aleatoriamente
|
||||
self.estrategia = estrategia
|
||||
# definir personalidade com base na estratégia
|
||||
self.personalidade = ModEstrategia.devolvePersonalidade(
|
||||
self.estrategia)
|
||||
self.personalidade = ModEstrategia.devolvePersonalidade(self.estrategia)
|
||||
# identificador de agente
|
||||
self.id_agente = id(self)
|
||||
self.pontuacao = 0
|
||||
@ -32,17 +32,27 @@ class Agente:
|
||||
\t\tpersonalidade: {self.personalidade}\n \
|
||||
\tpontução: {self.pontuacao}"
|
||||
|
||||
def amabilidade(self) -> float:
|
||||
def amabilidade(self) -> float | None:
|
||||
if isinstance(self.personalidade, NoneType):
|
||||
return None
|
||||
return self.personalidade["amabilidade"]
|
||||
|
||||
def retaliacao(self) -> float:
|
||||
def retaliacao(self) -> float | None:
|
||||
if isinstance(self.personalidade, NoneType):
|
||||
return None
|
||||
return self.personalidade["retaliacao"]
|
||||
|
||||
def perdao(self) -> float:
|
||||
def perdao(self) -> float | None:
|
||||
if isinstance(self.personalidade, NoneType):
|
||||
return None
|
||||
return self.personalidade["perdao"]
|
||||
|
||||
def coerencia(self) -> float:
|
||||
def coerencia(self) -> float | None:
|
||||
if isinstance(self.personalidade, NoneType):
|
||||
return None
|
||||
return self.personalidade["coerencia"]
|
||||
|
||||
def memoria(self) -> float:
|
||||
def memoria(self) -> float | None:
|
||||
if isinstance(self.personalidade, NoneType):
|
||||
return None
|
||||
return self.personalidade["memoria"]
|
||||
|
||||
Reference in New Issue
Block a user