diff options
| author | Jeff Armstrong <jeff@approximatrix.com> | 2013-05-29 09:16:47 -0400 |
|---|---|---|
| committer | Jeff Armstrong <jeff@approximatrix.com> | 2013-05-29 09:16:47 -0400 |
| commit | bc9c79c6abcc3bb53a09147f2d66f7f36dbca28c (patch) | |
| tree | 31d739939b23f3fc287112a23f9e7861703c1315 /lib/prep.py | |
| download | robotadventure-master.tar.gz robotadventure-master.zip | |
Diffstat (limited to 'lib/prep.py')
| -rw-r--r-- | lib/prep.py | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/lib/prep.py b/lib/prep.py new file mode 100644 index 0000000..2f72d56 --- /dev/null +++ b/lib/prep.py @@ -0,0 +1,66 @@ +# Murder in the Park - A Robotic Mystery +# Copyright (C) 2008 Jeffrey Armstrong (a.k.a. PrintStar) +# http://jeff.rainbow-100.com/ +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +# A full version of the license terms is available in LICENSE. + +PREPOSITIONS = ['at', +'with', +'in', +'to', +'on', +'inside', +'into', +'onto', +'about', +'the', +'a', +'an', +'out'] + +def removePrep(args): + words = args.split() + astr = '' + for word in words: + try: + PREPOSITIONS.index(word) + except ValueError: + astr = astr + word + ' ' + + return astr.strip() + +def parseSentence(sentence): + """Parses the sentence and returns a verb and the two objects (if applicable)""" + elements = sentence.split() + verb = elements[0] + obj1 = None + obj2 = None + elements = elements[1:] + + for value in elements: + try: + ind = PREPOSITIONS.index(value) + elements.remove(value) + except ValueError: + continue + + if len(elements) >= 1: + obj1 = elements[0] + + if len(elements) >= 2: + obj2 = elements[1] + + return (verb,obj1,obj2) |
