When I teach functional programming classes for Pythonistas, I usually use two external libraries that can be very useful in the migration process.
Pyrsistent for immutable containers: https://github.com/tobgu/pyrsistent
And Returns for safe types functions: https://github.com/dry-python/returns
are often useful for showing the differences in states and security. This may be helpful.