import sys, locale if sys.version_info < (3,): ascii = repr if hasattr(sys.flags, "utf8mode"): print("UTF-8 mode: {}".format(sys.flags.utf8mode)) print("locale: {} (current: {})".format( locale.getpreferredencoding(), locale.getpreferredencoding(False))) encoding = sys.getfilesystemencoding() if hasattr(sys, 'getfilesystemencodeerrors'): encoding = "{}/{}".format(encoding, sys.getfilesystemencodeerrors()) print("filesystem: {}".format(encoding)) print("sys.stdin: {}/{}".format(sys.stdin.encoding, sys.stdin.errors)) print("sys.stdout: {}/{}".format(sys.stdout.encoding, sys.stdout.errors)) print("sys.stderr: {}/{}".format(sys.stderr.encoding, sys.stderr.errors)) with open(__file__) as fp: print("open(): {}/{}".format(fp.encoding, fp.errors)) print("sys.argv: {}".format(ascii(sys.argv)))