The Natural Language Toolkit (NLTK) is a comprehensive suite of Python modules, data sets, and tutorials designed for research and teaching in computational linguistics and natural language processing (NLP). Written in Python under the GPL license, NLTK simplifies linguistic data structures and leverages recent Python enhancements. This paper introduces a simplified version of NLTK, highlighting its use in teaching NLP. It covers basic processing tasks such as tokenization, stemming, tagging, chunking, and parsing, providing code examples and explanations. NLTK's interactive features and extensive documentation make it an effective tool for both students and researchers, enabling them to learn and experiment with NLP concepts and algorithms. The paper also discusses how NLTK can be used to create assignments of varying difficulty, making it a valuable resource for integrating theory and practice in NLP courses.The Natural Language Toolkit (NLTK) is a comprehensive suite of Python modules, data sets, and tutorials designed for research and teaching in computational linguistics and natural language processing (NLP). Written in Python under the GPL license, NLTK simplifies linguistic data structures and leverages recent Python enhancements. This paper introduces a simplified version of NLTK, highlighting its use in teaching NLP. It covers basic processing tasks such as tokenization, stemming, tagging, chunking, and parsing, providing code examples and explanations. NLTK's interactive features and extensive documentation make it an effective tool for both students and researchers, enabling them to learn and experiment with NLP concepts and algorithms. The paper also discusses how NLTK can be used to create assignments of varying difficulty, making it a valuable resource for integrating theory and practice in NLP courses.