Original title:
"Help me understand this weird Python idiom?
sys.stdout = codecs.getwriter('utf-8')(sys.stdout)
"
I use this idiom all the time to print a bunch of content to standard out in utf-8 in Python 2.*:
sys.stdout = codecs.getwriter('utf-8')(sys.stdout)
But to be honest, I have no idea what the (sys.stdout)
is doing. It sort of reminds me of a Javascript closure or something. But I don't know how to look up this idiom in the Python docs.
Can any of you fine folks explain what's going on here? Thanks!