Python Better Profanity Library: A Documentation and Usage Guide

The Python Better Profanity Library is a powerful tool designed to help developers handle profane and offensive language within their applications. It provides a straightforward and efficient way to detect, filter, and replace inappropriate words or phrases in text data. Whether you are building a chat application, moderating user-generated content, or simply want to maintain a family-friendly environment, this library can be a valuable addition to your Python projects.

This documentation article will guide you through the installation process and explain the usage of the Python Better-Profanity library. Additionally, a mini project example will be provided to demonstrate how to utilize the library's features.


To install the Python Better Profanity Library, you can use pip, the Python package manager. Open your terminal or command prompt and enter the following command:

pip install better-profanity

Make sure you have Python and pip installed on your system before running this command.


The Better Profanity Library is straightforward to use. Below are the steps to integrate it into your Python application:

Step 1: Import the library:

import better_profanity

Step 2: Set up the library:

Before using the library, you have the option to configure its behavior. For instance, you can choose to replace offensive words with asterisks(*) or custom words. You can also extend the default list of offensive words with additional ones.

# Replace offensive words with asterisks

# Replace offensive words with custom word

# Extend the default list of offensive words
custom_bad_words = ["word1", "word2", "word3"]

Step 3: Check and filter text:

The primary functionality of the library is to check if a piece of text contains profanity and optionally filter it by replacing offensive words with a masking character or a custom word.

text = "I can't believe they said that!"

# Check if the text contains profanity
has_profanity = better_profanity.contains_profanity(text)

# Filter the text by replacing offensive words with asterisks
filtered_text = better_profanity.censor(text)

# Filter the text by replacing offensive words with a custom word
filtered_text_custom = better_profanity.censor(text, custom_word="kittens")

Step 4: Get a list of offensive words:

You can also retrieve a list of offensive words present in the given text.

text = "What the heck is going on here?"

# Get a list of offensive words in the text
offensive_words = better_profanity.get_profane_words(text)

You can watch the video below:

The Python Better Profanity Library provides an efficient solution for detecting, filtering, and replacing offensive language within text data. It is easy to integrate into Python applications, making it an ideal choice for applications that require content moderation or need to maintain a family-friendly environment.

Please note that while the library can be a valuable tool, it may not catch all possible variations of offensive words or phrases. Regular updates to the list of offensive words are recommended to stay current with evolving language trends.

For more details, you can refer to the official documentation and GitHub repository of the Python Better Profanity Library:

Now you have all the necessary information to implement the Better Profanity Library in your Python projects. Happy coding!