Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Add π to the math module #103172

Closed as not planned
Closed as not planned
@JosephSBoyle

Description

@JosephSBoyle

Currently, the math module in CPython uses the identifier math.pi to represent the mathematical constant π. This breaks user expectations and violates the principle of least surprise.

To improve consistency and readability, I propose changing math.pi to math.π symbol throughout the module. The reasoning for this is threefold:

  1. This change will make the code more intuitive for mathematicians and scientists (at least 99%+ of python users) who are more used to seeing the π symbol, thus reducing cognitive load and allowing them to build more complicated research code.

  2. Python supports unicode characters such as π and we don't take advantage of this enough. We can use π, therefore we should.

  3. Nobody currently knows how to type π, if we make this change users will have to open the math module and copy and paste the variable name - which is a great way to increase the visibility of important module internals that users need to read.

Some would be tempted to create a math.pi alias to maintain backwards compatibility, but I think that would only encourage people to continue using the non-symbolic variable (bad), so I propose simply deleting math.pi entirely (users will get the hint!).

This is a pretty small change so I don't think a news entry is necessary, in fact I think not having a news entry would make this change a sort of cool Easter Egg that users can discover and enjoy!

Kind regards and happy April 1st,
Joe

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.10only security fixes3.11only security fixes3.12only security fixes3.7 (EOL)end of life3.8 (EOL)end of life3.9only security fixestype-featureA feature request or enhancement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions