int

interpy

Ruby like string interpolation #{} in Python

Showing:

Popularity

Downloads/wk

0

GitHub Stars

256

Maintenance

Last Commit

5yrs ago

Contributors

3

Package

Dependencies

0

License

MIT

Categories

Readme

Interpy = Python String Interpolation

Interpy extends Python to support Ruby like string interpolation #{}. Quick example: print "Hello #{your_name}"

It is highly optimized, and directly compiled to bytecode, so you will have the same Python speed when using it.

Installation

The installation of this package is quite simple, you only have to run pip install interpy.

Usage

All python files with string interpolation must have the following first line

# coding: interpy

Example:

# coding: interpy

package = "Interpy"
print "Enjoy #{package}!"

How it works

This package is inspired by Dropbox's pyxl template engine.

Parsing

Interpy uses support for specifying source code encodings as described in PEP 263 to do what it does. The functionality was originally provided so that python developers could write code in non-ascii languages (eg. chinese variable names). Interpy creates a custom encoding called interpy which allows it to convert interpolated strings into regular python before the file is compiled. Once the interpy codec is registered, any file starting with # coding: interpy is run through the interpy parser before compilation.

Compiling

The above example would be compiled to this (in bytecode):

# coding: interpy

package = "Interpy"
print "Enjoy "+str(package)+"!"

Compatibility

This package is fully compatible with Python 2+, Python 3+ and PyPy

Why?

I really enjoyed Ruby String interpolation, and "".format(...) or "" % (...) seems very verbose to me. I'm lazy by nature ;)

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial