导入熊猫似乎正在使用不推荐使用的python模块

时间:2018-06-22 18:02:29

标签: python python-3.x pandas importerror

我一直试图将熊猫导入到我的python文件中,但是每次我运行它时,都会出现以下错误:

 Traceback (most recent call last):


File "C:\Python36\lib\site-packages\pandas\compat\__init__.py", line 49, in <module>
    import __builtin__ as builtins
ModuleNotFoundError: No module named '__builtin__'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "email.py", line 1, in <module>
    import pandas as pd
  File "C:\Python36\lib\site-packages\pandas\__init__.py", line 23, in <module>
    from pandas.compat.numpy import *
  File "C:\Python36\lib\site-packages\pandas\compat\__init__.py", line 62, in <module>
    import http.client as httplib
  File "C:\Python36\lib\http\client.py", line 71, in <module>
    import email.parser
  File "C:\Users\xx\Desktop\Projects\email_sender\email.py", line 3, in <module>
    df = pd.read_excel("emails.xlsx", 'Sheet1', index_col=None, na_values=['NA'])
AttributeError: module 'pandas' has no attribute 'read_excel'

这是/pandas/__init__.py文件中的导入代码块的外观:

try:
    import __builtin__ as builtins
    # not writeable when instantiated with string, doesn't handle unicode well
    from cStringIO import StringIO as cStringIO
    # always writeable
    from StringIO import StringIO
    BytesIO = StringIO
    import cPickle
    import httplib
except ImportError:
    import builtins
    from io import StringIO, BytesIO
    cStringIO = StringIO
    import pickle as cPickle
    import http.client as httplib

我发现在python3中将__builtin__重命名为builtins之后,修复了该行并尝试导入后,我也从StringIO导入中得到了错误,因为该错误已删除来自python3,并使用不同的语法来调用该模块。

我的系统仅安装了python3。我也已经升级了所有的熊猫依赖项,可以正常导入它们。 我还卸载了熊猫,然后再次重新安装,但同样的事情也会发生。

熊猫版本为0.23.1 Python版本是3.6.5

我不知道为什么最新版本的pandas在其导入中使用已弃用或删除的模块。

0 个答案:

没有答案