获取python文件或环境的CURRENT_FILE_ENCODING

时间:2010-10-23 20:30:37

标签: python encoding

如果可能的话,如何从正在运行的python进程中告知源文件的编码?

2 个答案:

答案 0 :(得分:2)

encoding = open(__file__).encoding

这可能在某些情况下有效,但请注意http://docs.python.org/library/stdtypes.html#file.encoding

答案 1 :(得分:-1)

如果您检查__file__,它将为您提供正在运行的代码的文件名。如果以“.pyc”或“.pyo”结尾,则剪掉最后一个字符。这是正在运行的代码的源文件。读取该文件,查找编码头。

请注意,这是一个简化,找到真正的源文件会变得更加困难,但这在很多情况下都会有效。

BTW:为什么你需要知道源文件的编码?它应该是无关紧要的,我想。