我正在尝试将一些消息记录到日志文件中。记录器的输入恰好也是一些unicode字符串。
以下是一个示例代码:
import logging
logging.basicConfig(filename='ReviewReport.log',
filemode='w',
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s')
myTestStr = 'My Str is DeltaΔ'
try:
logging.info(myTestStr )
except Exception:
print('In except block....')
#handle exception by encoding the string.
print('execute rest of the program')
当我这样做时,我在控制台上看到以下异常:
UnicodeEncodeError: 'charmap' codec can't encode character '\u0394' in position 49: character maps to <undefined>
我试了很多东西来理解为什么我的代码没有达到除了块之外。 '在block ....中没有被打印但是'执行程序的其余部分'被打印,这让我觉得当'myTestStr'没有记录到我的日志文件时,记录器实际上没有产生任何异常。
我的问题是:
在这里感谢任何支持。谢谢。