python ModuleNotFoundError:没有名为“win32api”的模块

flvtvl50  于 2023-06-28  发布在  Python
关注(0)|答案(4)|浏览(185)

这是收到的错误:

Traceback (most recent call last):
  File "C:/Users/Joe Martin/AppData/Local/Programs/Python/Python37/test.py", line 12, in <module>
    import win32com.client
  File "C:\Users\Joe Martin\AppData\Local\Programs\Python\Python37\lib\site-packages\win32com\__init__.py", line 5, in <module>
    import win32api, sys, os
ModuleNotFoundError: No module named 'win32api'

尝试导入win32com.client模块时发生此错误。
尝试的解决方案:

  • Python 3.7的全新擦除和安装
  • pip install pypiwin32
  • pip install pywin32
  • 运行pywin32_postinstall.py

我找不到任何其他解决方案来解决这个问题。

6yjfywim

6yjfywim1#

这通常是因为在安装软件包后没有附加PythonPath。检查文件夹--\\PythonVersion\\Lib\\site-packages\\下的文件--pywin32.pth
文件中的内容如下:

# .pth file for the PyWin32 extensions
win32
win32\lib
Pythonwin
# Entries needed for a "portable" installations, where the post_install script
# isn't run, which would normally copy the pywin32 core DLL files to either
# the top of the python directory.
# We just stick the source of these DLLs directly on the PATH.
import os;os.environ["PATH"]+=(';'+os.path.join(sitedir,"pywin32_system32"))

或者创建一个PYTHONPATH环境变量,并将win32win32/lib路径追加到其中。
您也可以在项目临时中将这两个路径添加到Python:

import sys
sys.path.append('\\PythonVersion\\lib\\site-packages\\win32')
sys.path.append('\\PythonVersion\\lib\\site-packages\\win32\\lib')

路径的添加仅暂时有效。

pbpqsu0x

pbpqsu0x2#

@JohnJairo你的解决方案对我也有效。

from win32 import win32api
dohp0rv5

dohp0rv53#

我解决了:

from win32 import win32api

print("Width =", win32api.GetSystemMetrics(0))
print("Height =", win32api.GetSystemMetrics(1))

其他的可能性都不适合我。Python 3.9.6(在Windows上)IDLE 3.9.6 tk版本8.6.9

z0qdvdin

z0qdvdin4#

我通过删除Python环境并使用全局默认环境修复了这个问题。正确的Environment将在Python Environment窗口中列出您的代码导入的所有模块。enter image description here

相关问题