如何将collection转换为collection.abc来解决这个问题

问题描述 投票:0回答:1
content/drive/MyDrive/person-modeltest/person-identify/model.py:2309: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if os.name is 'nt':
Using TensorFlow backend.
Traceback (most recent call last):
  File "/content/drive/MyDrive/person-modeltest/person-identify/Video_demo_person_identification.py", line 4, in <module>
    import coco
  File "/content/drive/MyDrive/person-modeltest/person-identify/coco.py", line 22, in <module>
    import model as modellib, utils
  File "/content/drive/MyDrive/person-modeltest/person-identify/model.py", line 13, in <module>
    import keras
  File "/usr/local/lib/python3.10/dist-packages/keras/__init__.py", line 4, in <module>
    from . import activations
  File "/usr/local/lib/python3.10/dist-packages/keras/activations.py", line 6, in <module>
    from .engine import Layer
  File "/usr/local/lib/python3.10/dist-packages/keras/engine/__init__.py", line 8, in <module>
    from .training import Model
  File "/usr/local/lib/python3.10/dist-packages/keras/engine/training.py", line 25, in <module>
    from .. import callbacks as cbks
  File "/usr/local/lib/python3.10/dist-packages/keras/callbacks.py", line 15, in <module>
    from collections import Iterable
ImportError: cannot import name 'Iterable' from 'collections' (/usr/lib/python3.10/collections/__init__.py)

如何解决3.10.12中的迭代错误

python deep-learning python-3.10
1个回答
0
投票

正确的解决方案是更新您的库以匹配您的 Python 版本:谁知道还有哪些其他不兼容之处? 最简单的解决方案是对标准库进行猴子补丁。在主脚本的开头、所有导入之前将其删除,后果自负:

import collections # workaround for old library collections.Iterable = collections.abc.Iterable # FIXME: if you find this I'm buying everyone presents 尽快以正确的方式做:如果你在

任何东西
中留下这样的东西,一个月后你就会后悔。

© www.soinside.com 2019 - 2024. All rights reserved.