sys.argv
Python中 , 的元素采用什么编码方式?它们是用sys.getdefaultencoding()
编码编码的吗?
sys.getdefaultencoding():返回 Unicode 实现使用的当前默认字符串编码的名称。
PS:正如一些答案中指出的那样,sys.stdin.encoding
确实是一个更好的猜测。不过,我希望看到这个问题的明确答案,并提供可靠来源的指针!
PPS:正如 Wim 所指出的,Python 3 通过将str
对象放入 sys.argv 来解决这个问题(如果我理解正确的话)。不过,对于 Python 2.x,这个问题仍然悬而未决。在 Unix 下,LC_CTYPE 环境变量似乎是正确的检查对象,不是吗?Windows 应该做什么(以便 sys.argv 元素在任何控制台都被正确解释)?