Skip to content

Commit c99dca1

Browse files
meatballsmarcharper
authored andcommitted
Format codebase using black
1 parent 36aa63f commit c99dca1

38 files changed

+345
-169
lines changed

axelrod/fingerprint.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@
1313

1414
import axelrod as axl
1515
from axelrod import Player
16-
from axelrod.interaction_utils import (compute_final_score_per_turn,
17-
read_interactions_from_file)
16+
from axelrod.interaction_utils import (
17+
compute_final_score_per_turn,
18+
read_interactions_from_file,
19+
)
1820
from axelrod.strategy_transformers import DualTransformer, JossAnnTransformer
1921

2022
Point = namedtuple("Point", "x y")

axelrod/game.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,7 @@ def __init__(self, r: Score = 3, s: Score = 0, t: Score = 5, p: Score = 1) -> No
3030
p: int or float
3131
Score obtained by both player for mutual defection.
3232
"""
33-
self.scores = {
34-
(C, C): (r, r),
35-
(D, D): (p, p),
36-
(C, D): (s, t),
37-
(D, C): (t, s)}
33+
self.scores = {(C, C): (r, r), (D, D): (p, p), (C, D): (s, t), (D, C): (t, s)}
3834

3935
def RPST(self) -> Tuple[Score, Score, Score, Score]:
4036
"""Returns game matrix values in Press and Dyson notation."""

axelrod/moran.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ def __init__(
5151
noise: float = 0,
5252
game: Game = None,
5353
deterministic_cache: DeterministicCache = None,
54-
mutation_rate: float = 0.,
54+
mutation_rate: float = 0.0,
5555
mode: str = "bd",
5656
interaction_graph: Graph = None,
5757
reproduction_graph: Graph = None,

axelrod/strategies/_strategies.py

Lines changed: 189 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -4,89 +4,225 @@
44
from .apavlov import APavlov2006, APavlov2011
55
from .appeaser import Appeaser
66
from .averagecopier import AverageCopier, NiceAverageCopier
7-
from .axelrod_first import (Davis, Feld, Grofman, Joss, Nydegger,
8-
RevisedDowning, Shubik, SteinAndRapoport,
9-
TidemanAndChieruzzi, Tullock, UnnamedStrategy)
10-
from .axelrod_second import (Black, Borufsen, Cave, Champion, Colbert,
11-
Eatherley, Getzler, Gladstein, GraaskampKatzen,
12-
Harrington, Kluepfel, Leyvraz, Mikkelson,
13-
MoreGrofman, MoreTidemanAndChieruzzi,
14-
RichardHufford, Tester, Tranquilizer, Weiner,
15-
White, WmAdams, Yamachi)
7+
from .axelrod_first import (
8+
Davis,
9+
Feld,
10+
Grofman,
11+
Joss,
12+
Nydegger,
13+
RevisedDowning,
14+
Shubik,
15+
SteinAndRapoport,
16+
TidemanAndChieruzzi,
17+
Tullock,
18+
UnnamedStrategy,
19+
)
20+
from .axelrod_second import (
21+
Black,
22+
Borufsen,
23+
Cave,
24+
Champion,
25+
Colbert,
26+
Eatherley,
27+
Getzler,
28+
Gladstein,
29+
GraaskampKatzen,
30+
Harrington,
31+
Kluepfel,
32+
Leyvraz,
33+
Mikkelson,
34+
MoreGrofman,
35+
MoreTidemanAndChieruzzi,
36+
RichardHufford,
37+
Tester,
38+
Tranquilizer,
39+
Weiner,
40+
White,
41+
WmAdams,
42+
Yamachi,
43+
)
1644
from .backstabber import BackStabber, DoubleCrosser
1745
from .better_and_better import BetterAndBetter
1846
from .bush_mosteller import BushMosteller
1947
from .calculator import Calculator
2048
from .cooperator import Cooperator, TrickyCooperator
21-
from .cycler import (AntiCycler, Cycler, CyclerCCCCCD, CyclerCCCD,
22-
CyclerCCCDCD, CyclerCCD, CyclerDC, CyclerDDC)
49+
from .cycler import (
50+
AntiCycler,
51+
Cycler,
52+
CyclerCCCCCD,
53+
CyclerCCCD,
54+
CyclerCCCDCD,
55+
CyclerCCD,
56+
CyclerDC,
57+
CyclerDDC,
58+
)
2359
from .darwin import Darwin
2460
from .dbs import DBS
2561
from .defector import Defector, TrickyDefector
2662
from .doubler import Doubler
27-
from .finite_state_machines import (TF1, TF2, TF3, EvolvedFSM4, EvolvedFSM16,
28-
EvolvedFSM16Noise05, Fortress3, Fortress4,
29-
FSMPlayer, Predator, Pun1, Raider, Ripoff,
30-
SolutionB1, SolutionB5, Thumper)
63+
from .finite_state_machines import (
64+
TF1,
65+
TF2,
66+
TF3,
67+
EvolvedFSM4,
68+
EvolvedFSM16,
69+
EvolvedFSM16Noise05,
70+
Fortress3,
71+
Fortress4,
72+
FSMPlayer,
73+
Predator,
74+
Pun1,
75+
Raider,
76+
Ripoff,
77+
SolutionB1,
78+
SolutionB5,
79+
Thumper,
80+
)
3181
from .forgiver import Forgiver, ForgivingTitForTat
32-
from .gambler import (Gambler, PSOGambler1_1_1, PSOGambler2_2_2,
33-
PSOGambler2_2_2_Noise05, PSOGamblerMem1, ZDMem2)
82+
from .gambler import (
83+
Gambler,
84+
PSOGambler1_1_1,
85+
PSOGambler2_2_2,
86+
PSOGambler2_2_2_Noise05,
87+
PSOGamblerMem1,
88+
ZDMem2,
89+
)
3490
from .geller import Geller, GellerCooperator, GellerDefector
35-
from .gobymajority import (GoByMajority, GoByMajority5, GoByMajority10,
36-
GoByMajority20, GoByMajority40, HardGoByMajority,
37-
HardGoByMajority5, HardGoByMajority10,
38-
HardGoByMajority20, HardGoByMajority40)
91+
from .gobymajority import (
92+
GoByMajority,
93+
GoByMajority5,
94+
GoByMajority10,
95+
GoByMajority20,
96+
GoByMajority40,
97+
HardGoByMajority,
98+
HardGoByMajority5,
99+
HardGoByMajority10,
100+
HardGoByMajority20,
101+
HardGoByMajority40,
102+
)
39103
from .gradualkiller import GradualKiller
40-
from .grudger import (Aggravater, EasyGo, ForgetfulGrudger, GeneralSoftGrudger,
41-
Grudger, GrudgerAlternator, OppositeGrudger, SoftGrudger)
104+
from .grudger import (
105+
Aggravater,
106+
EasyGo,
107+
ForgetfulGrudger,
108+
GeneralSoftGrudger,
109+
Grudger,
110+
GrudgerAlternator,
111+
OppositeGrudger,
112+
SoftGrudger,
113+
)
42114
from .grumpy import Grumpy
43115
from .handshake import Handshake
44116
from .hmm import EvolvedHMM5, HMMPlayer
45117
from .human import Human
46-
from .hunter import (AlternatorHunter, CooperatorHunter, CycleHunter,
47-
DefectorHunter, EventualCycleHunter, MathConstantHunter,
48-
RandomHunter)
118+
from .hunter import (
119+
AlternatorHunter,
120+
CooperatorHunter,
121+
CycleHunter,
122+
DefectorHunter,
123+
EventualCycleHunter,
124+
MathConstantHunter,
125+
RandomHunter,
126+
)
49127
from .inverse import Inverse
50-
from .lookerup import (EvolvedLookerUp1_1_1, EvolvedLookerUp2_2_2, LookerUp,
51-
Winner12, Winner21)
128+
from .lookerup import (
129+
EvolvedLookerUp1_1_1,
130+
EvolvedLookerUp2_2_2,
131+
LookerUp,
132+
Winner12,
133+
Winner21,
134+
)
52135
from .mathematicalconstants import Golden, Pi, e
53-
from .memoryone import (GTFT, ALLCorALLD, FirmButFair, MemoryOnePlayer,
54-
ReactivePlayer, SoftJoss, StochasticCooperator,
55-
StochasticWSLS, WinShiftLoseStay, WinStayLoseShift)
136+
from .memoryone import (
137+
GTFT,
138+
ALLCorALLD,
139+
FirmButFair,
140+
MemoryOnePlayer,
141+
ReactivePlayer,
142+
SoftJoss,
143+
StochasticCooperator,
144+
StochasticWSLS,
145+
WinShiftLoseStay,
146+
WinStayLoseShift,
147+
)
56148
from .memorytwo import AON2, MEM2, DelayedAON1, MemoryTwoPlayer
57149
from .mindcontrol import MindBender, MindController, MindWarper
58150
from .mindreader import MindReader, MirrorMindReader, ProtectedMindReader
59151
from .mutual import Desperate, Hopeless, Willing
60152
from .negation import Negation
61-
from .oncebitten import (FoolMeForever, FoolMeOnce, ForgetfulFoolMeOnce,
62-
OnceBitten)
63-
from .prober import (CollectiveStrategy, HardProber, NaiveProber, Prober,
64-
Prober2, Prober3, Prober4, RemorsefulProber)
65-
from .punisher import (InversePunisher, LevelPunisher, Punisher,
66-
TrickyLevelPunisher)
67-
from .qlearner import (ArrogantQLearner, CautiousQLearner, HesitantQLearner,
68-
RiskyQLearner)
153+
from .oncebitten import FoolMeForever, FoolMeOnce, ForgetfulFoolMeOnce, OnceBitten
154+
from .prober import (
155+
CollectiveStrategy,
156+
HardProber,
157+
NaiveProber,
158+
Prober,
159+
Prober2,
160+
Prober3,
161+
Prober4,
162+
RemorsefulProber,
163+
)
164+
from .punisher import InversePunisher, LevelPunisher, Punisher, TrickyLevelPunisher
165+
from .qlearner import (
166+
ArrogantQLearner,
167+
CautiousQLearner,
168+
HesitantQLearner,
169+
RiskyQLearner,
170+
)
69171
from .rand import Random
70172
from .resurrection import DoubleResurrection, Resurrection
71-
from .retaliate import (LimitedRetaliate, LimitedRetaliate2, LimitedRetaliate3,
72-
Retaliate, Retaliate2, Retaliate3)
173+
from .retaliate import (
174+
LimitedRetaliate,
175+
LimitedRetaliate2,
176+
LimitedRetaliate3,
177+
Retaliate,
178+
Retaliate2,
179+
Retaliate3,
180+
)
73181
from .selfsteem import SelfSteem
74182
from .sequence_player import SequencePlayer, ThueMorse, ThueMorseInverse
75183
from .shortmem import ShortMem
76184
from .stalker import Stalker
77-
from .titfortat import (AdaptiveTitForTat, Alexei, AntiTitForTat, Bully,
78-
ContriteTitForTat, DynamicTwoTitsForTat, EugineNier,
79-
Gradual, HardTitFor2Tats, HardTitForTat, Michaelos,
80-
NTitsForMTats, OmegaTFT, RandomTitForTat,
81-
SlowTitForTwoTats2, SneakyTitForTat, SpitefulTitForTat,
82-
SuspiciousTitForTat, TitFor2Tats, TitForTat,
83-
TwoTitsForTat)
185+
from .titfortat import (
186+
AdaptiveTitForTat,
187+
Alexei,
188+
AntiTitForTat,
189+
Bully,
190+
ContriteTitForTat,
191+
DynamicTwoTitsForTat,
192+
EugineNier,
193+
Gradual,
194+
HardTitFor2Tats,
195+
HardTitForTat,
196+
Michaelos,
197+
NTitsForMTats,
198+
OmegaTFT,
199+
RandomTitForTat,
200+
SlowTitForTwoTats2,
201+
SneakyTitForTat,
202+
SpitefulTitForTat,
203+
SuspiciousTitForTat,
204+
TitFor2Tats,
205+
TitForTat,
206+
TwoTitsForTat,
207+
)
84208
from .verybad import VeryBad
85-
from .worse_and_worse import (KnowledgeableWorseAndWorse, WorseAndWorse,
86-
WorseAndWorse2, WorseAndWorse3)
87-
from .zero_determinant import (ZDGTFT2, ZDExtort2, ZDExtort2v2, ZDExtort3,
88-
ZDExtort4, ZDExtortion, ZDGen2, ZDMischief,
89-
ZDSet2)
209+
from .worse_and_worse import (
210+
KnowledgeableWorseAndWorse,
211+
WorseAndWorse,
212+
WorseAndWorse2,
213+
WorseAndWorse3,
214+
)
215+
from .zero_determinant import (
216+
ZDGTFT2,
217+
ZDExtort2,
218+
ZDExtort2v2,
219+
ZDExtort3,
220+
ZDExtort4,
221+
ZDExtortion,
222+
ZDGen2,
223+
ZDMischief,
224+
ZDSet2,
225+
)
90226

91227
# Note: Meta* strategies are handled in .__init__.py
92228

axelrod/strategies/axelrod_second.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -389,7 +389,7 @@ def strategy(self, opponent: Player) -> Action:
389389
if (current_score[0] / ((len(self.history)) + 1)) >= 2.25:
390390
probability = (
391391
(
392-
.95
392+
0.95
393393
- (
394394
(
395395
(self.one_turn_after_good_defection_ratio)
@@ -408,8 +408,8 @@ def strategy(self, opponent: Player) -> Action:
408408
return D
409409
if (current_score[0] / ((len(self.history)) + 1)) >= 1.75:
410410
probability = (
411-
(.25 + ((opponent.cooperations + 1) / ((len(self.history)) + 1)))
412-
- (self.opponent_consecutive_defections * .25)
411+
(0.25 + ((opponent.cooperations + 1) / ((len(self.history)) + 1)))
412+
- (self.opponent_consecutive_defections * 0.25)
413413
+ ((current_score[0] - current_score[1]) / 100)
414414
+ (4 / ((len(self.history)) + 1))
415415
)

axelrod/strategies/dbs.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class DBS(Player):
3434

3535
def __init__(
3636
self,
37-
discount_factor=.75,
37+
discount_factor=0.75,
3838
promotion_threshold=3,
3939
violation_threshold=4,
4040
reject_threshold=3,

axelrod/strategies/hmm.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def is_stochastic_matrix(m, ep=1e-8) -> bool:
1616
if (m[i][j] < 0) or (m[i][j] > 1):
1717
return False
1818
s = sum(m[i])
19-
if abs(1. - s) > ep:
19+
if abs(1.0 - s) > ep:
2020
return False
2121
return True
2222

axelrod/strategies/memoryone.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ def __init__(self, ep: float = 0.05) -> None:
257257
"""
258258

259259
self.ep = ep
260-
four_vector = (1. - ep, ep, ep, 1. - ep)
260+
four_vector = (1.0 - ep, ep, ep, 1.0 - ep)
261261
super().__init__(four_vector)
262262
self.set_four_vector(four_vector)
263263

@@ -287,7 +287,7 @@ def __init__(self, q: float = 0.9) -> None:
287287
TitForTat is equivalent to SoftJoss(1)
288288
"""
289289
self.q = q
290-
four_vector = (1., 1 - q, 1, 1 - q)
290+
four_vector = (1.0, 1 - q, 1, 1 - q)
291291
super().__init__(four_vector)
292292

293293
def __repr__(self) -> str:

axelrod/strategies/meta.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,15 @@
77
from numpy.random import choice
88

99
from ._strategies import all_strategies
10-
from .hunter import (AlternatorHunter, CooperatorHunter, CycleHunter,
11-
DefectorHunter, EventualCycleHunter, MathConstantHunter,
12-
RandomHunter)
10+
from .hunter import (
11+
AlternatorHunter,
12+
CooperatorHunter,
13+
CycleHunter,
14+
DefectorHunter,
15+
EventualCycleHunter,
16+
MathConstantHunter,
17+
RandomHunter,
18+
)
1319

1420
# Needs to be computed manually to prevent circular dependency
1521
ordinary_strategies = [s for s in all_strategies if obey_axelrod(s)]

0 commit comments

Comments
 (0)