DEV Community

Theekshana Chamodhya
Theekshana Chamodhya

Posted on

The 5 Most Underrated Python Libraries You Should Start Using Right Now

Image description

“Wait… there are Python libraries other than Pandas and NumPy?”

If you just thought that, welcome to the club! Sure, Pandas and NumPy are great, but there’s a whole world of underrated Python libraries that can make you look like a coding wizard 🧙‍♂️ (my favorite kind of work, TBH).

In this post, I’m going to introduce you to 5 hidden gems in the Python ecosystem. Use these libraries and people will think you’re some kind of Python sorcerer (don’t worry, I won’t tell them how easy it was).

And if you’re a lazy developer (like me), you can skip the research and just sign up for my Beehive newsletter(Its Completely Free ) where I regularly drop code, hacks, and life-saving libraries straight to your inbox. No spam, just code.

Alright, let’s get to it!

1. Rich: Beautiful Console Output, Easy Peasy

You ever been jealous of those fancy, colorful terminal outputs you see online? No? Well, now you will be.

With Rich, you can add pretty colors, progress bars, and even Markdown support to your terminal output in just a few lines of code. It’s basically like giving your terminal a glow-up.

from rich.console import Console
console = Console()

# Welcome to the world of fancy console output
console.print("Hello, [bold magenta]World![/bold magenta] 🌍")

Enter fullscreen mode Exit fullscreen mode

Why You’ll Love It: Because plain text is boring, and now you can flex on your coworkers with a terminal that looks like it’s auditioning for a sci-fi movie. 🎨

2. Typer: Making CLI Tools Without Wanting to Cry

Building command-line interfaces (CLI) in Python can sometimes feel like you’re in a battle with your keyboard. Enter Typer, the library that makes CLI tools so easy you’ll wonder if you’re cheating.

import typer
# Behold! The world's simplest CLI
def greet(name: str):
    print(f"Hello, {name}! 👋")
if __name__ == "__main__":
   # Trust me, this one line is about to blow your mind
    typer.run(greet)
Enter fullscreen mode Exit fullscreen mode

Why You’ll Love It: One line to create a fully functional CLI app. It’s like magic, but without the top hat and rabbits. Also, you get to say things like “I made a CLI tool” at parties. 🚀

3. Arrow: Timezones Without Losing Your Mind

Working with dates and timezones in Python is like trying to assemble IKEA furniture — without the instructions. Arrow is here to save your sanity.

import arrow
now = arrow.now()

# Because we're too fancy for basic datetime
print(now.shift(hours=+1).format('YYYY-MM-DD HH:mm:ss'))
Enter fullscreen mode Exit fullscreen mode

Why You’ll Love It: No more needing to decipher ancient timezone scrolls. Now you can manipulate dates and times like a pro while pretending you totally understand timezones. ⏰

4. Pydantic: Data Validation Done Right

Have you ever tried to validate data manually? No? Well, you’re lucky. It’s a headache. But with Pydantic, data validation becomes fun (yes, I just said that).

from pydantic import BaseModel

# Meet User, our favorite model (not the catwalk kind)
class User(BaseModel):
    name: str
    age: int

# Alice is valid, no more typos, hooray!
user = User(name="Alice", age=30)
print(user)
Enter fullscreen mode Exit fullscreen mode

Why You’ll Love It: Data validation doesn’t have to make you want to throw your laptop out the window. With Pydantic, it’s like having a built-in proofreader for your code. 💼

5. Loguru: Logging Without the Setup Headache

Logging in Python can be… uh, tedious. Enter Loguru, which makes setting up logs so easy that even your dog could do it (probably).

from loguru import logger

# Look at me, logging like a pro in ONE line!
logger.info("This is an info message. 📝")
Enter fullscreen mode Exit fullscreen mode

Why You’ll Love It: One line, no setup, and now your code will tell you what’s going wrong without sending you into a tailspin. It’s logging without the emotional breakdown. 😢

Conclusion: Go Forth and Code (But Use These Libraries)

There you have it — 5 Python libraries that are seriously underrated and will save you hours of work. Try them out, and soon you’ll be dropping cool one-liners like, “Oh yeah, I built a CLI tool with Typer” or “You’re still using basic logs? I switched to Loguru.

And if you’re a lazy developer (like me), don’t forget to sign up for my Beehive newsletter(Its Completely Free ). I’ll deliver more hidden Python gems, tips, and tricks right to your inbox so you can spend less time Googling and more time looking like a genius. 💻✨

Happy coding!

FAQs About Underrated Python Libraries

Why should I use these lesser-known Python libraries instead of more popular ones?
While popular libraries like Pandas and NumPy are fantastic, these underrated libraries provide more specialized functionality that can save you time and effort in specific areas like terminal output, logging, and CLI creation.

  1. Can I use these libraries in any Python project?

Yes! These libraries are highly versatile and can be used across a wide range of Python projects, from small scripts to large-scale applications. They integrate seamlessly with other libraries and frameworks too.

  1. Is Rich really going to make my terminal look pretty, or is it just hype?

Rich isn’t just hype! It genuinely transforms your terminal output with colors, formatting, and progress bars. It’s like the makeup artist of Python libraries — it’ll make your terminal look fabulous without any extra effort.

  1. I’m new to Python. Will these libraries be too advanced for me?

Not at all! Each of these libraries was chosen because they simplify tasks, even for beginners. They cut down the complexity and make coding more fun and intuitive. You’ll look like a pro in no time!

  1. What’s the easiest way to get started with these libraries?

You can find code snippets and documentation on each library’s website, or if you’re feeling extra lazy (like me), just sign up for my newsletter,(Its Completely Free )where I’ll send you tips, tricks, and pre-written code directly to your inbox. No need to spend hours Googling!

  1. Do these libraries work well together?

Absolutely! These libraries can be used independently or together in larger projects. For example, you can use Rich for output, Loguru for logging, and Typer for your command-line interfaces, all in one project.

  1. How do these libraries improve my productivity as a developer?

They remove a lot of boilerplate code and allow you to focus on the core logic of your application. Whether it’s handling timezones, creating CLI tools, or logging, these libraries take care of the repetitive stuff, giving you more time to work on the fun parts.

  1. How can I learn more about cool Python libraries like these?

Easy! Subscribe to my Beehive newsletter (Its Completely Free ), where I regularly drop hidden Python gems, tips, and ready-to-use code. You’ll be the first to know about these tools before they go mainstream!

Top comments (3)

Collapse
 
cavo789 profile image
Christophe Avonture

I'm still junior with python but all the five suggestions are so useless.. So simple to do in vanilla python.

So you'll create five dependencies for... that ???

Collapse
 
ceb10n profile image
Rafael de Oliveira Marques

Rich is ridiculously awesome!

And pydantic is not underrated, it is MUST use lib! ❤️

Collapse
 
oliverbennet profile image
Oliver Bennet

Hey there, this is indeed a great list. This needs so much attention