当我通过pip install synonyms时,总是下载不成功,完整的错误示例如下:

Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting pinyin
  Using cached http://mirrors.aliyun.com/pypi/packages/32/95/d2969f1071b7bc0afff407d1d7b4b3f445e8e6b59df7921c9c09e35ee375/pinyin-0.4.0.tar.gz (3.6 MB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [51 lines of output]
      running egg_info
      creating C:\Users\zdm\AppData\Local\Temp\pip-pip-egg-info-pp39i6cl\pinyin.egg-info
      writing C:\Users\zdm\AppData\Local\Temp\pip-pip-egg-info-pp39i6cl\pinyin.egg-info\PKG-INFO
      writing dependency_links to C:\Users\zdm\AppData\Local\Temp\pip-pip-egg-info-pp39i6cl\pinyin.egg-info\dependency_links.txt
      writing entry points to C:\Users\zdm\AppData\Local\Temp\pip-pip-egg-info-pp39i6cl\pinyin.egg-info\entry_points.txt
      writing top-level names to C:\Users\zdm\AppData\Local\Temp\pip-pip-egg-info-pp39i6cl\pinyin.egg-info\top_level.txt
      writing manifest file 'C:\Users\zdm\AppData\Local\Temp\pip-pip-egg-info-pp39i6cl\pinyin.egg-info\SOURCES.txt'
      Traceback (most recent call last):
        File "<string>", line 36, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "C:\Users\zdm\AppData\Local\Temp\pip-install-0s80o2m4\pinyin_ab01038a81c249598cc1f2a7b59501b2\setup.py", line 34, in <module>
          "Programming Language :: Python :: Implementation :: PyPy",
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\__init__.py", line 153, in setup
          return distutils.core.setup(**attrs)
        File "D:\anaconda3\envs\py37\lib\distutils\core.py", line 148, in setup
          dist.run_commands()
        File "D:\anaconda3\envs\py37\lib\distutils\dist.py", line 966, in run_commands
          self.run_command(cmd)
        File "D:\anaconda3\envs\py37\lib\distutils\dist.py", line 985, in run_command
          cmd_obj.run()
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\command\egg_info.py", line 299, in run
          self.find_sources()
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\command\egg_info.py", line 306, in find_sources
          mm.run()
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\command\egg_info.py", line 541, in run
          self.add_defaults()
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\command\egg_info.py", line 578, in add_defaults
          sdist.add_defaults(self)
        File "D:\anaconda3\envs\py37\lib\distutils\command\sdist.py", line 226, in add_defaults
          self._add_defaults_python()
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\command\sdist.py", line 111, in _add_defaults_python
          build_py = self.get_finalized_command('build_py')
        File "D:\anaconda3\envs\py37\lib\distutils\cmd.py", line 299, in get_finalized_command
          cmd_obj.ensure_finalized()
        File "D:\anaconda3\envs\py37\lib\distutils\cmd.py", line 107, in ensure_finalized
          self.finalize_options()
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\command\build_py.py", line 29, in finalize_options
          orig.build_py.finalize_options(self)
        File "D:\anaconda3\envs\py37\lib\distutils\command\build_py.py", line 45, in finalize_options
          ('force', 'force'))
        File "D:\anaconda3\envs\py37\lib\distutils\cmd.py", line 286, in set_undefined_options
          src_cmd_obj = self.distribution.get_command_obj(src_cmd)
        File "D:\anaconda3\envs\py37\lib\distutils\dist.py", line 857, in get_command_obj
          klass = self.get_command_class(command)
        File "D:\anaconda3\envs\py37\lib\site-packages\setuptools\dist.py", line 893, in get_command_class
          self.cmdclass[command] = cmdclass = ep.load()
        File "D:\anaconda3\envs\py37\lib\site-packages\pkg_resources\__init__.py", line 2465, in load
          return self.resolve()
        File "D:\anaconda3\envs\py37\lib\site-packages\pkg_resources\__init__.py", line 2471, in resolve
          module = __import__(self.module_name, fromlist=['__name__'], level=0)
      ModuleNotFoundError: No module named 'setuptools.command.build'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

先总结一下,我从网上查到的方法,我全部试过啦,但是完全没有解决这个问题!!【哭唧唧,没有头绪】

python3 -m pip install --upgrade pip setuptools wheel
pip3 install 包名 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
pip install --upgrade pip
pip install --upgrade setuptools

心里有个疑惑,到底是不是setuptools版本的问题呢?然后,抱着试一试的想法,我执行了pip uninstall setuptools

ModuleNotFoundError: No module named

没想到啊,当我再次执行pip install synonyms时,竟然成功啦~~~开心!!!

ModuleNotFoundError: No module named

注意:这个错误不只是在安装synonyms时出现,也会在安装其他包时出现,解决方法一样】