7 Python Packages That Nobody Uses

Kasper Junge
3 min readJun 8, 2023

--

In the Python’s sprawling wilderness, there are hidden gems (or are they?). Let's explore some obscure packages that, for one reason or another, you probably won't find in your next project's requirements.txt.

1. Antigravity (Standard Python Library)

Yes, it's real! But no, it won't help you escape Earth's gravitational pull. It's actually a fun easter egg within Python, which opens a web browser and takes you to a classic XKCD comic about Python.

import antigravity

While it's amusing, it doesn't have practical value for your production code!

2. Missingno

Missing data keeping you up at night? Stress no more! Missingno, the cartographer of the void, maps out all your data’s desolate, empty spaces with ease.

import missingno as msno
import pandas as pd

# Load your dataframe df
df = pd.read_csv('your_data.csv')

# Visualize missing values
msno.matrix(df)

The msno.matrix(df) function throws you a black-and-white matrix party, where white spaces are your "missing" VIP guests. It's like having a flashlight in the dark abyss of incomplete data.

3. Faker

Ever wanted to be someone else? Faker does that for your data! It’s the master of disguises, generating fake identities faster than a secret agent on the run.

from faker import Faker
fake = Faker()

# Generate a fake name
print(fake.name())

# Generate a fake address
print(fake.address())

Running this code will spit out a phony name and address, offering you an alibi anytime you need to test your alibi… err, I mean data.

4. Brainfuck

It's a Python interpreter for the Brainfuck language, a minimalistic esoteric language designed for obfuscation and difficult readability.

from brainfuck import eval

eval("+[----->+++<]>+.++++++++..-----------.-[--->+<]>-.-[->+++<]>.")

If your goal is readable and maintainable code, then this package isn't for you!

5. Lettuce

Lettuce is a BDD (Behavior-Driven Development) tool. While BDD has its merits, it's generally more complex and time-consuming than simpler testing approaches like TDD (Test-Driven Development).

from lettuce import step

@step('Given I have the number (\d+)')
def have_the_number(step, number):
# Test code here
pass

It's not that Lettuce is a bad tool, but it's not widely adopted and there are other well-established tools like PyTest, Unittest, and doctest that are simpler and more common.

6. Numerizer

The superhero we didn’t know we needed, Numerizer swoops in to save the day by converting words into numbers.

from numerizer import numerize

print(numerize('forty-two')) # Output: 42

Suddenly, ‘forty-two’ is no longer a cryptic Douglas Adams reference, but a number! Now that’s power (or uselessness, you decide).

7. PyAztro

Last but not least, PyAztro is here to serve you your daily dose of horoscope. Because who doesn’t want to spice up their app with cosmic predictions, right?

import pyaztro

# Get horoscope for Gemini
horoscope = pyaztro.Aztro(sign='gemini')
print(horoscope.description)

Run the code and voila! You get a fortune cookie-esque horoscope for Gemini. Use it wisely (or don’t).

--

--

Kasper Junge

Machine Learning Engineer 👨‍💻 AI, LLMs, Deep Learning, Python 🔥