Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何对日志文件进行编码?_Python_Logging_Python 3.x_Encoding - Fatal编程技术网

Python 如何对日志文件进行编码?

Python 如何对日志文件进行编码?,python,logging,python-3.x,encoding,Python,Logging,Python 3.x,Encoding,我的代码: logging.warning('FASE VALIDACIÓN TITULOS DE COLUMNAS DE DATOS NO SUPERADA. compruebe los nombres de los títulos de las columnas en datos.csv)') 在.log文件中输出: WARNING:root:FASE VALIDACI�N TITULOS DE COLUMNAS DE DATOS NO SUPERADA. compruebe los no

我的代码:

logging.warning('FASE VALIDACIÓN TITULOS DE COLUMNAS DE DATOS NO SUPERADA. compruebe los nombres de los títulos de las columnas en datos.csv)')
在.log文件中输出:

WARNING:root:FASE VALIDACI�N TITULOS DE COLUMNAS DE DATOS NO SUPERADA. compruebe los nombres de los t�tulos de las columnas en datos.csv)
然后我试了一下:

logging.basicConfig(filename=nombreFicheroLog, encoding="utf-8", level=logging.DEBUG)
但它不起作用。然后我试了这个:

logging.warning(u'FASE VALIDACIÓN TITULOS DE COLUMNAS DE DATOS NO SUPERADA. compruebe los nombres de los títulos de las columnas en datos.csv)')
但是输出是相同的

如何对.log文件进行编码以支持UTF-8


另外,我正在使用Python3。

basicConfig
不接受
编码
参数,但在Python3.3中,您可以这样做:

logging.basicConfig(handlers=[logging.FileHandler(nombreFicheroLog, 'w', 'utf-8')], 
                    level=logging.DEBUG)

对于较旧的Python,请参见。

在python3中向字符串添加
u
,这样做没有任何作用。在Python3中,字符串默认为unicode。当您看到奇怪的
字符?你在.log文件的十六进制转储中看过了吗?(可能只是日志文件查看器没有正确显示utf 8。)@Alfe,我正在使用Pycharm IDE查看输出文件:设置:文件编码->IDE编码->选中“utf-8”,“自动检测utf”;Proyect Encoding->谢谢@JanneKarila,很好用。但现在,我需要了解它在中国是如何运作的;我不喜欢使用我不知道如何使用的东西非常感谢。我不知道FileHandler必须在数组中。来,拿我的↑.