auto-walrus
auto-walrus
A tool and pre-commit hook to automatically apply the awesome walrus operator.
Installation
pip install auto-walrus
Usage as a pre-commit hook
See pre-commit for instructions
Sample .pre-commit-config.yaml
:
- repo: https://github.com/MarcoGorelli/auto-walrus
rev: v0.2.2
hooks:
- id: auto-walrus
Command-line example
auto-walrus myfile.py
- n = 10
- if n > 3:
+ if (n := 10) > 3:
print(n)
Configuration
Using the walrus operator can result in longer lines. Lines longer than what you
pass to --line-length
won't be rewritten to use walrus operators.
E.g.
auto-walrus myfile_1.py myfile_2.py --line-length 89
Lines with comments won't be rewritten.
Used by
To my great surprise, this is being used by:
- https://github.com/python-graphblas/python-graphblas
- https://github.com/Remi-Gau/bids2cite
- https://github.com/TheAlgorithms/Python
- https://github.com/apache/superset
Anyone else? Please let me know, or you can open a pull request to add yourself.
Testimonials
Christopher Redwine, Senior Software Engineer at TechnologyAdvice
hmm, i dunno about this one chief
Michael Kennedy & Brian Okken, hosts of the Python Bytes podcast:
I kind of like this being separate from other tools
Someone on Discord
you're a monster
Will McGugan, CEO / Founder of http://Textualize.io:
Embrace the Walrus!
Credits
Logo by lion_space