Python: Natural Language Toolkit - Exercises, Solutions

Python NLTK

NLTK is a leading platform for building Python programs to work with human language data. It provides easy-to-use interfaces to over 50 corpora and lexical resources such as WordNet, along with a suite of text processing libraries for classification, tokenization, stemming, tagging, parsing, and semantic reasoning, wrappers for industrial-strength NLP libraries.

The best way we learn anything is by practice and exercise questions. We have started this section for those (beginner to intermediate) who are familiar with Python, Natural Language Toolkit.

Hope, these exercises help you to improve your Python-NLTK coding skills. Currently, following sections are available, we are working hard to add more exercises .... Happy Coding!

List of Python NLTK Exercises :

Installing NLTK:

NLTK requires Python versions 2.7, 3.5, 3.6, or 3.7


  • Install NLTK: run sudo pip install -U nltk
  • Install Numpy (optional): run sudo pip install -U numpy
  • Test installation: run python then type import nltk


These instructions assume that you do not already have Python installed on your machine.

  • Install Python 3.7: http://www.python.org/downloads
  • Install Numpy (optional): https://www.scipy.org/scipylib/download.html
  • Install NLTK: http://pypi.python.org/pypi/nltk
  • Test installation: Start>Python37, then type import nltk

anaconda / packages / nltk 3.4.1 Installers:

conda install 
  •  linux-ppc64le  v3.4.1
  •  osx-32  v3.0.4
  •  linux-64  v3.4.1
  •  win-32  v3.4.1
  •  osx-64  v3.4.1
  •  linux-32  v3.4
  •  win-64  v3.4.1

To install this package with conda run:

  conda install -c anaconda nltk 

[ Want to contribute to Python exercises? Send your code (attached with a .zip file) to us at w3resource[at]yahoo[dot]com. Please avoid copyrighted materials.]

Python: Tips of the Day

Python: Inspect an object in Python


test_obj = [1, 3, 5, 7]
print( dir(test_obj) )


['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', 
'__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__',
'__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__',
'__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__',
'__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']