WARNING: DO NOT USE 'python-futurize'.
Personally, I don't like futurize because it embeds tons of goop which makes everything depend on the futurize module at runtime. This is problematic for calibre, because your plugin cannot depend on futurize being installed in calibre!
See for details:
https://python-future.org/faq.html#w...thon-modernize
tl;dr Use python-modernize, it can help you update your code to use pythonic idioms which work well on both python2 and python3. The only dependency it will add is to the six module, which is okay, because calibre guarantees that six is available.