Created
November 14, 2012 21:51
-
-
Save saltavenger/4075079 to your computer and use it in GitHub Desktop.
triggers2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Enter your code for WordTrigger, TitleTrigger, | |
class WordTrigger(Trigger): | |
def __init__(self, word): | |
self.word = word.lower() | |
def isWordIn(self, text): | |
newtext=[] | |
self.text = text.lower() | |
for c in string.punctuation: | |
self.text = self.text.replace(c, ' ').lower() | |
newText = self.text.split(' ') | |
return self.word in newText | |
# TODO: TitleTrigger | |
class TitleTrigger(WordTrigger): | |
def evaluate(self, story): | |
return self.isWordIn(story.getTitle()) | |
# NotTrigger, AndTrigger, and OrTrigger in this box | |
# TODO: NotTrigger | |
class NotTrigger(Trigger): | |
def __init__(self, T): | |
self.T = T | |
def evaluate(self, story): | |
return not self.T.evaluate(story) | |
# TODO: AndTrigger | |
class AndTrigger(Trigger): | |
def __init__(self, t1, t2): | |
self.t1= t1 | |
self.t2= t2 | |
def evaluate(self, story): | |
if self.t1.evaluate(story) == True and self.t2.evaluate(story) == True: | |
return True | |
else: | |
return False | |
# TODO: OrTrigger | |
class OrTrigger(Trigger): | |
def __init__(self, trigger1, trigger2): | |
self.trigger1= trigger1 | |
self.trigger2= trigger2 | |
def evaluate(self, story): | |
return self.trigger1.evaluate(story) or self.trigger2.evaluate(story) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment