我正在运行基于python:3-stretch
的Docker容器。在我的python代码中,如果发出诸如print("båt")
之类的命令,挪威特殊字符“å”将被忽略,输出仅为bt
。我不确定是容器本身在使用我国家的特殊字符时遇到麻烦,还是python解释器。
在我的docker-compose.yml文件中,我将这些环境变量无济于事:
environment:
- LANG=nb_NO.UTF-8
- LC_ALL=nb_NO.UTF-8
- PYTHONIOENCODING=utf-8
我也将此添加到了我的Dockerfile中,但仍然没有:
RUN apt-get update
RUN apt-get -y install locales
RUN echo nb_NO.UTF-8 UTF-8 > /etc/locale.gen
RUN locale-gen nb_NO.UTF-8
此外,我什至尝试用python代码对语言环境进行硬编码:
import locale
locale.setlocale(locale.LC_ALL, 'nb_NO.UTF-8')
print("båt")
输出仍然为bt
。
任何帮助调试的人将不胜感激!