this library is no longer needed:
A backport of fstrings to python<3.6.
pip install future-fstrings
Include the following encoding cookie at the top of your file (this replaces the utf-8 cookie if you already have it):
# -*- coding: future_fstrings -*-
And then write python3.6 fstring code as usual!
# -*- coding: future_fstrings -*- thing = 'world' print(f'hello {thing}')
$ python2.7 main.py hello worldShowing transformed source
future-fstrings
also includes a cli to show transformed source.
$ future-fstrings-show main.py # -*- coding: future_fstrings -*- thing = 'world' print('hello {}'.format((thing)))Transform source for micropython
The future-fstrings-show
command can be used to transform source before distributing. This can allow you to write f-string code but target platforms which do not support f-strings, such as micropython.
To use this on modern versions of python, install using:
pip install future-fstrings[rewrite]
and then use future-fstrings-show
as above.
For instance:
future-fstrings-show code.py > code_rewritten.py
future-fstrings
has two parts:
codec
which performs source manipulation
codec
first decodes the source bytes using the UTF-8 codeccodec
then leverages tokenize-rt to rewrite f-strings..pth
file which registers a codec on interpreter startup.site
registration
in setups (such as aws lambda) where you utilize PYTHONPATH
or sys.path
instead of truly installed packages, the .pth
magic above will not take.
for those circumstances, you'll need to manually initialize future-fstrings
in a non-fstring wrapper. for instance:
import future_fstrings future_fstrings.register() from actual_main import main if __name__ == '__main__': raise SystemExit(main())
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4