Skip to main content

Python f-strings for before Python3.6

Project description

tests flake8 Upload Python Package

fstringlt36 Regex Edition

Installation: pip install fstringlt36

About:

Python f-strings for before Python 3.6. using Regex
This package should try to emulate all f-string features
by using a class that inherits from str.
You can also use it to get newer f-string features in earlier versions of Python.
such as: h = 'hello'; f'{h = }'. the ; is just to denonote the end of a line.
This package requires the re (regular expressions, regex) module.
To my knowledge most versions of Python have re, if not you can use the non regex version
So it should be able to install on any Python version.
Although it's not been tested if thats true because it's not working yet.
Once I implement all the features I will test it across multiple python version and platforms.

Features currently working:

basic variable replacement

>>> from fstringlt36 import f
>>> h = "Hello,"
>>> f("{h} world")
hello world

using the equal operator (I don't know a better name for this and I'm to lazy to look at the document)

>>> from fstringlt36 import f
>>> h = "Hello,"
>>> # instead of doing print(f("h = {h}"))
>>> # you can do print(f("{h = }"))
>>> print(f("{h = }"))
h = 'Hello,'

note:

please note to not call f().f_string_parse() directly but use the f() class.
if you try to f_string_parse() to use directly it will ruin your output and fall back to:

>>> value = 'error: variable ' + string + ' not found'

where value is the replacement string to whatever you put in {}.

>>> from fstringlt36 import f
>>> var = 'foo'
>>> s = f("{var}")
>>> print(s)
foo
>>> t = s.f_string_parse()
>>> print(t)
error: variable value not found
>>> print(s)
error: variable value not found
# besides for messing up t it will also mess up s because it's a reference to the same object.

Version:

Version Number: 0.0.3
Version Stage: alpha

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fstringlt36-0.0.3.tar.gz (5.8 kB view hashes)

Uploaded Source

Built Distribution

fstringlt36-0.0.3-py3-none-any.whl (6.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page