Advertisement
Guest User

Untitled

a guest
Jul 25th, 2014
247
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. word_types = {'noun': ['bear', 'princess', 'door'],
  2. 'verb': ['go', 'run', 'hide', 'stop', 'close', 'kill', 'eat'],
  3. 'stop': ['in', 'of', 'at', 'to', 'from', 'the'],
  4. 'direction': ['up', 'down', 'north', 'south',
  5. 'east', 'west', 'back', 'forward']}
  6.  
  7. def type_check(word):
  8. word = word.lower()
  9. for label, type in word_types.items():
  10. if word in type:
  11. return (label, word)
  12.  
  13. def type_identify(word):
  14. word = word.lower()
  15. return [ (label, word) for label, type in word_types.items() if word in type ]
  16.  
  17. def scan(sentence):
  18. sentence_list = sentence.split()
  19. for k, v in enumerate(sentence_list):
  20. if type_identify(v):
  21. sentence_list[k] = type_identify(v)[0] #needed to add [0]
  22. else:
  23. try:
  24. sentence_list[k] = ('number', int(v))
  25. except ValueError:
  26. sentence_list[k] = ('error', v)
  27. return sentence_list
  28.  
  29. return next(((label, word)
  30. for label, type in word_types.items()
  31. if word in type),
  32. None)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement