attrs VS CPython

Compare attrs vs CPython and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
attrs CPython
11 1,314
5,074 59,531
0.9% 1.6%
9.1 10.0
2 days ago 4 days ago
Python Python
MIT License GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

attrs

Posts with mentions or reviews of attrs. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-08-29.
  • Litestar 2.0
    4 projects | /r/Python | 29 Aug 2023
    Full support for validation and serialisation of attrs classes and msgspec Structs. Where previously only Pydantic models and types where supported, you can now mix and match any of these three libraries. In addition to this, adding support for another modelling library has been greatly simplified with the new plugin architecture
  • Ask HN: How can I get better at writing production-level Python?
    9 projects | news.ycombinator.com | 18 Jul 2023
  • Starlite updates March '22 | 2.0 is coming
    14 projects | /r/Python | 26 Mar 2023
    Pydantic is by far not the only library of its kind, with prominent members of the same class being attrs, cattrs or even plain dataclasses for some use cases.
  • Data Classification: Does Python still have a need for class without dataclass?
    2 projects | news.ycombinator.com | 14 Feb 2023
    Anything requiring e.g. setattr, getattr, delattr? Without looking far,

    https://github.com/python-attrs/attrs/blob/main/src/attr/_ma...

  • What new Python features are the most useful for you?
    2 projects | news.ycombinator.com | 19 Jan 2023
  • Why you should use Data Classes in Python
    2 projects | /r/Python | 16 Sep 2022
  • Python Built-In Functions to Know
    2 projects | news.ycombinator.com | 10 Mar 2022
    I was looking for an example of using locals() to "fill a data class from kwargs" or something similar to that. The example here doesn't use locals().

    That aside, I generally wouldn't use the kwargs approach shown in this example either. I'd use [dataclasses](https://docs.python.org/3/library/dataclasses.html ) or [attrs](https://www.attrs.org/) instead.

  • Building a Micro Business: What Services I Pay For
    16 projects | dev.to | 30 Dec 2021
    hynek: developer of attrs
  • Soap and REST at Odds (2017)
    1 project | news.ycombinator.com | 3 Aug 2021
    I continue to be surprised how easy it can be to consume a SOAP API with the right client libraries. Such as https://docs.python-zeep.org/en/master/ for Python. Now that's not to say it will always work, you can design a terrible API with any mechanism, no SOAP or REST client will help you if the other end has desided to succumb to madness and done something like turn their entire API into just "two endpoints" and driven by the payload content you post to the inbound endpoint, and you have to sit there polling the outbound endpoint with the inbound endpoints response ID because to find out what the eventual response is...

    But horror story aside, consuming a decent SOAP endpoint with a good client library can be practically magical.

    Between attrs (https://www.attrs.org/), cattrs (https://cattrs.readthedocs.io/), and the aforementioned zeep soap client I've got a serialisation pipeline from soap endpoint into an attrs dataclass with type hints and basic type validation down to a snippet so small it fits right here (type hints removed to minimise size).

      from zeep import helpers
  • PEP 661 -- Sentinel Values
    6 projects | /r/Python | 6 Jun 2021
    attrs has at least two.

CPython

Posts with mentions or reviews of CPython. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-25.
  • scrape-yahoo-finance
    3 projects | dev.to | 25 Apr 2024
    Web Scraping Tool Development: Develop a Python based web scraping tool capable of extracting data from targeted web pages on Yahoo Finance and presenting the data extracted in a readable format. Our target site relies on AJAX to load and update the data dynamically so we will need a tool that is capable of processing JavaScript.
  • Employee Management System using Python.
    2 projects | dev.to | 21 Apr 2024
    Dealing with piles of papers or scattered Excel sheets for employee information can be a real headache, right? Well, what if I told you there's a smoother way to handle all that? A system that lets you easily store, update, and find details about your employees in just a few clicks. Sounds neat, doesn't it? In this article, we're going to explore creating an employee management system using Python, Tkinter, and SQLite3.
  • Build a Product Receipt Generator using Python.
    1 project | dev.to | 20 Apr 2024
    Python is a versatile tool, and today we're delving into a practical use case that can simplify your daily routines. With the datetime module at your disposal, handling dates and times becomes a breeze, making it perfect for crafting accurate and dynamic product receipts. Whether you're a seasoned Python pro or just starting your coding journey, this article will guide you through each step with ease.
  • Build a Music Player with Python
    2 projects | dev.to | 20 Apr 2024
    When working in Visual Studio Code (VS Code), create a new Python file for our music player project. It's helpful to have separate files for different parts of your project.
  • PEP 744 – JIT Compilation
    1 project | news.ycombinator.com | 18 Apr 2024
    > It provides a meaningful performance improvement for at least one popular platform (realistically, on the order of 5%).

    At first it will not provide a large boost, but it will set the foundations for larger gains in subsequent releases. They link a list of some proposed improvements already underway, with improvement estimates, at https://github.com/python/cpython/issues/115802

  • Featured Mod of the Month: Phil Ashby
    2 projects | dev.to | 16 Apr 2024
    After that, with the basics of software engineering understood, I would move on to a wider use language, with a bigger ecosystem to employ, most likely Python. This would expose me to large system design / distributed systems and architectural challenges...
  • Convert Images Into Pencil Sketch
    2 projects | dev.to | 11 Apr 2024
    Have you ever felt like your photos needed a little extra touch to stand out? Well, get ready because we're about to learn a cool Python trick! We're going to take ordinary photos and turn them into awesome pencil sketches using Python and OpenCV. This will make your pictures look like they were drawn by hand!
  • Crafting an Image to PDF Converter App Using Python
    1 project | dev.to | 11 Apr 2024
    Have you ever found yourself in a situation where you needed to convert a bunch of images into a PDF file quickly and efficiently? Imagine the convenience of converting a series of images from your recent trip into a single PDF album with just a few clicks. In this article, we will cover the process of building an Image PDF Converter App using Python. With the help of libraries like tkinter, os, and Python Imaging Library (PIL), we'll walk through the process of creating a powerful tool that can streamline this task for you.
  • Calculator with GUI Using Python Tkinter
    1 project | dev.to | 11 Apr 2024
    If you've ever wanted to learn how to use Python or if you already know a bit and want to try something new, then you're in the right place! In this article, we'll show you step-by-step how to make your very own calculator using Python's Tkinter library, a renowned Python library for creating graphical user interfaces. Tkinter stands out for its simplicity, versatility, and widespread use in the Python community. It doesn't matter if you're a total beginner or an experienced coder looking for a fun project, we'll guide you through everything you need to know.
  • Back to Basics - Pandas #1
    1 project | dev.to | 9 Apr 2024
    Pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.

What are some alternatives?

When comparing attrs and CPython you can also consider the following projects:

itsdangerous - Safely pass trusted data to untrusted environments and back.

RustPython - A Python Interpreter written in Rust

transitions - A lightweight, object-oriented finite state machine implementation in Python with many extensions

ipython - Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.

pluginbase - A simple but flexible plugin system for Python.

Vulpix - Fast, unopinionated, minimalist web framework for .NET core inspired by express.js

Pychievements - The Python Achievements Framework!

Visual Studio Code - Visual Studio Code

Throttler - 🔀⏳ Easy throttling with asyncio support

Automatic-Udemy-Course-Enroller-GET-PAID-UDEMY-COURSES-for-FREE - Do you want to LEARN NEW STUFF for FREE? Don't worry, with the power of web-scraping and automation, this script will find the necessary Udemy coupons & enroll you for PAID UDEMY COURSES, ABSOLUTELY FREE!

blinker - A fast Python in-process signal/event dispatching system.

Pandas - Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more