【问题标题】:Mac system generate error message when I call python script on terminal当我在终端上调用 python 脚本时,Mac 系统生成错误消息
【发布时间】:2017-08-08 05:04:15
【问题描述】:

我的代码只是几天前的关注和工作:

import pandas as pd

df = pd.read_csv('WORLDBANK-ZAF_MYS_PROP_4044_SEC_MF.csv')
print(df.head())

但是现在每当我尝试通过在我的 Mac 终端上调用 python my_io.py 来运行它时,它都会生成以下消息:

Bases-MacBook-Pro:data_analysis me$ python my_io.py 回溯(最近一次通话最后): 文件“my_io.py”,第 1 行,在 将熊猫导入为 pd 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas/init.py”,第 13 行,在 导入(依赖) 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/init.py”,第 142 行,在 从 。导入 add_newdocs 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/add_newdocs.py”,第 13 行,在 从 numpy.lib 导入 add_newdoc 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/lib/init.py”,第 8 行,在 从 .type_check 导入 * 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/lib/type_check.py”,第 11 行,在 将 numpy.core.numeric 导入为 _nx 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/core/init.py”,第 72 行,在 从 numpy.testing.nosetester 导入 _numpy_tester 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/testing/init.py”,第 12 行,在 从 。将装饰器导入为 dec 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/testing/decorators.py”,第 20 行,在 从 .utils 导入 SkipTest,assert_warns 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/testing/utils.py”,第 15 行,在 从临时文件导入 mkdtemp、mkstemp 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tempfile.py”,第 32 行,在 将 io 导入为 _io 文件“/Users/gongzhuli/Desktop/data_analysis/io.py”,第3行,在

AttributeError: 'module' 对象没有属性 'read_csv'

谁能帮帮我,我不知道这里发生了什么..

【问题讨论】:

    标签: python macos python-2.7 numpy


    【解决方案1】:

    您的文件名为io.py,这是一个库模块,用于处理类似文件的缓冲区等。

    pandas 导入需要它的tempfile

    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tempfile.py", line 32, in <module>
        import io as _io
    

    并且您的文件名妨碍了导入链并阻止导入通过。

    只需用更具体的名称重命名您的文件(例如 my_io.py?)

    【讨论】:

    • 我实际上有一堆其他代码在使用 pandas 模块的文件中都有完全随机的名称,但今天没有一个工作并产生类似的错误......几天前工作得很好......
    • 这仍然是因为该文件被导入。同样的问题。重命名文件,一切都会好起来的。
    • holy *** 我真是个愚蠢的脑袋,让我们只在我和你之间保密这个问题,哈哈,没有其他人见过这个问题....问题不仅仅是 io。 py 但它也是由我在同一个文件夹中制作的 pickle.py 引起的,我认为这并不重要……我真的不知道为什么前几天它确实有效。该死的花了我2个小时
    • 通常人们使用csv 模块并称之为csv.py。但那里更恶毒。至少有人看到了这个问题,得到了 1 票 :)
    猜你喜欢
    • 2016-07-12
    • 2015-06-01
    • 2018-01-08
    • 1970-01-01
    • 2018-05-09
    • 2013-11-20
    • 2021-10-13
    • 1970-01-01
    • 2016-10-25
    相关资源
    最近更新 更多