_
allows you to write Python code using only _
.
Tip
It is highly recommended to use a virtual environment for proper installation of the _.pth
file.
python -m pip install underscores
Python 3.9 or a newer version is required.
The following script is a "Hello, world!" program which can be executed by the Python interpreter:
# coding: _
_ ____ _ _____ _ ____ __ _ _ ___ ______ ____ _ ____ _ ___ _ ____ __ ___ _ __ _
_____ _ _ ______ _____ _ ___ _ _ _ ___ _____ ______ _ ____ _ _ _ ____ _ _ _ ____
_ ____ _ __ __ ___ _ _ ______ ___ _ ____ __ ______ _ ____ _ ____ _ ____ __ _ _
____ _ _ _ ___ _____ _____ _ _ ______ ____ _ _ ______ _____ _ __ _ ______
You can generate a script with _
:
print('print("Hello, world!")'.encode("_").decode("utf-8"))
If you get SyntaxError: invalid syntax
, make sure the line # coding: _
is present at the top of your script.
If you get SyntaxError: encoding problem: _
, follow the steps below to make sure the _
encoding is registered on startup:
- Run
SITE_PACKAGES=$(python -c 'import sysconfig; print(sysconfig.get_path("purelib"))')
to get the path to the Python site-packages directory. - Run
echo "import underscores" > "$SITE_PACKAGES/_.pth"
to register the_
encoding on startup.
Note
If using PowerShell, use $SITE_PACKAGES
instead of SITE_PACKAGES
to assign the variable.
This issue is commonly encountered when installing _
into the user site-packages.
_
is a port of _
from Ruby to Python.
Please check out the original creator mame.
Big thanks to shailist for this awesome post about custom encodings.