【问题标题】:"UnsupportedOperation: fileno" in Spacy Jupyter NotebookSpacy Jupyter Notebook 中的“UnsupportedOperation:fileno”
【发布时间】:2022-08-06 19:59:52
【问题描述】:

任何人都可能知道这个错误是关于什么以及如何处理它?

Spacy 虽然在 python 命令行界面中工作。

我试图用谷歌搜索错误的各个部分,但没有发现任何具体的内容。

这已经在 Windows 11 上的 Conda 上使用 Python 3.9。

下面的错误信息供参考。

UnsupportedOperation                      Traceback (most recent call last)
~\\AppData\\Local\\Temp/ipykernel_4264/572880994.py in <module>
----> 1 import spacy

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\spacy\\__init__.py in <module>
      4 
      5 # set library-specific custom warning handling before doing anything else
----> 6 from .errors import setup_default_warnings
      7 
      8 setup_default_warnings()  # noqa: E402

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\spacy\\errors.py in <module>
      1 import warnings
----> 2 from .compat import Literal
      3 
      4 
      5 class ErrorsWithCodes(type):

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\spacy\\compat.py in <module>
      1 \"\"\"Helpers for Python and platform compatibility.\"\"\"
      2 import sys
----> 3 from thinc.util import copy_array
      4 
      5 try:

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\thinc\\__init__.py in <module>
      3 
      4 from .about import __version__
----> 5 from .config import registry

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\thinc\\config.py in <module>
     11 from pydantic.main import ModelMetaclass
     12 from pydantic.fields import ModelField
---> 13 from wasabi import table
     14 import srsly
     15 import catalogue

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\wasabi\\__init__.py in <module>
     10 from .about import __version__  # noqa
     11 
---> 12 msg = Printer()

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\wasabi\\printer.py in __init__(self, pretty, no_print, colors, icons, line_max, animation, animation_ascii, hide_animation, ignore_warnings, env_prefix, timestamp)
     54         self.pretty = pretty and not env_no_pretty
     55         self.no_print = no_print
---> 56         self.show_color = supports_ansi() and not env_log_friendly
     57         self.hide_animation = hide_animation or env_log_friendly
     58         self.ignore_warnings = ignore_warnings

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\wasabi\\util.py in supports_ansi()
    262         if \"ANSICON\" in os.environ:
    263             return True
--> 264         return _windows_console_supports_ansi()
    265 
    266     return True

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\wasabi\\util.py in _windows_console_supports_ansi()
    234             raise ctypes.WinError()
    235 
--> 236     console = msvcrt.get_osfhandle(sys.stdout.fileno())
    237     try:
    238         # Try to enable ANSI output support

C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel\\iostream.py in fileno(self)
    306             return self._original_stdstream_copy
    307         else:
--> 308             raise io.UnsupportedOperation(\"fileno\")
    309 
    310     def _watch_pipe_fd(self):

UnsupportedOperation: fileno

标签: python import spacy


【解决方案1】:

该问题已通过使用旧版本卸载当前版本的 Wasabi 得到临时解决。

pip uninstall wasabi -y

pip install wasabi==0.9.1

来自 Github 的人提到更新版本的 Wasabi 应该可以避免这个问题。

【讨论】:

  • 我在 conda-forge 环境中的 Windows 10 上遇到了同样的问题,user3081750 的答案对我有用。
  • @Pythonic2020 你是如何为 conda 做到这一点的?
  • conda install wasabi==0.9.1 -c conda-forge,然后我将芥末固定到该环境的 conda-meta 文件夹中的 0.9.1。当芥末 >​​ 0.9.1 时,此时 spacy 根本不会导入,导致很多混乱和挫败感。
【解决方案2】:

我有同样的问题。也许你可以试试。

conda update spacy

它解决了我的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-20
    • 1970-01-01
    • 2020-01-24
    • 1970-01-01
    • 2021-06-13
    • 2019-03-15
    • 2018-01-25
    相关资源
    最近更新 更多