重现步骤:

在GPU上打开新的Colab笔记本

!ls #works
!pip install -q turicreate
import turicreate as tc
!ls #doesn't work


我收到以下错误:

---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)
<ipython-input-22-16fdbe588ee8> in <module>()
----> 1 get_ipython().system('ls')
      2 # !nvcc --version

2 frames
/usr/local/lib/python3.6/dist-packages/google/colab/_system_commands.py in _run_command(cmd, clear_streamed_output)
    165   if locale_encoding != _ENCODING:
    166     raise NotImplementedError(
--> 167         'A UTF-8 locale is required. Got {}'.format(locale_encoding))
    168
    169   parent_pty, child_pty = pty.openpty()

NotImplementedError: A UTF-8 locale is required. Got ANSI_X3.4-1968


不幸的是,这对我来说没有什么意义。有线索吗?我还将在turicreate项目中发布潜在问题。

编辑:

看起来确实像注释中所建议的那样覆盖了我的语言环境。导入之前,我可以执行以下操作:

import locale
locale.getdefaultlocale()
(en_US, UTF-8)


但是,当我得到:

locale.getdefaultlocale()
(None, None)


尽管由于无法使用Shell命令,现在不确定如何重置语言环境?

最佳答案

这是Turicreate的问题。
相关问题在此处打开:https://github.com/apple/turicreate/issues/1862

摘要是:在启动turicreate sets the LC_ALL environment variable to C ()时。

解决方法:

import turicreate as tc
import os
del os.environ['LC_ALL']

10-08 04:07