首页 > 解决方案 > AttributeError:“模块”对象在运行烧瓶项目的主 python 文件时没有属性“getargspec”

问题描述

当我试图运行我的烧瓶项目的 python 文件时。我得到属性错误:

“模块”对象没有属性“getargspec”

**Scenario 1:** When tried running the python file of my flask project
    -bash-4.2$ python ./main_service.py
    Traceback (most recent call last):
      File "./main_service.py", line 1, in <module>
        from flask import Flask, request, json, Blueprint
      File "/usr/lib64/python2.7/site-packages/flask/__init__.py", line 17, in 
<module>
        from werkzeug.exceptions import abort
      File "/usr/lib/python2.7/site-packages/werkzeug/__init__.py", line 20, in 
<module>
        from werkzeug._compat import iteritems
      File "/usr/lib/python2.7/site-packages/werkzeug/_compat.py", line 10, in <module>
    import builtins
  File "/usr/lib/python2.7/site-packages/builtins/__init__.py", line 8, in <module>
    from future.builtins import *
  File "/usr/lib/python2.7/site-packages/future/builtins/__init__.py", line 10, in <module>
    from future.builtins.iterators import (filter, map, zip)
  File "/usr/lib/python2.7/site-packages/future/builtins/iterators.py", line 38, in <module>
    from future import utils
  File "/usr/lib/python2.7/site-packages/future/utils/__init__.py", line 55, in <module>
    import inspect
  File "/usr/lib64/python2.7/inspect.py", line 39, in <module>
    import tokenize
  File "/usr/lib64/python2.7/tokenize.py", line 30, in <module>
    from token import *
  File "/opt/cDVR/services/token.py", line 2, in <module>
    import requests, json
  File "/usr/lib/python2.7/site-packages/requests/__init__.py", line 95, in <module>
    from urllib3.contrib import pyopenssl
  File "/usr/lib/python2.7/site-packages/urllib3/contrib/pyopenssl.py", line 47, in <module>
    from cryptography import x509
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/__init__.py", line 7, in <module>
    from cryptography.x509.base import (
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/base.py", line 14, in <module>
    from cryptography import utils
  File "/usr/lib64/python2.7/site-packages/cryptography/utils.py", line 70, in <module>
    signature = inspect.getargspec
AttributeError: 'module' object has no attribute 'getargspec'
-bash-4.2$



Scenario2: Output of import flask statement in python console
-bash-4.2$ flask --version
Flask 1.0.2
Python 2.7.5 (default, May 31 2018, 09:41:32)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]
-bash-4.2$

-bash-4.2$ python
Python 2.7.5 (default, May 31 2018, 09:41:32)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import flask
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.7/site-packages/flask/__init__.py", line 17, in <module>
    from werkzeug.exceptions import abort
  File "/usr/lib/python2.7/site-packages/werkzeug/__init__.py", line 20, in <module>
    from werkzeug._compat import iteritems
  File "/usr/lib/python2.7/site-packages/werkzeug/_compat.py", line 10, in <module>
    import builtins
  File "/usr/lib/python2.7/site-packages/builtins/__init__.py", line 8, in <module>
    from future.builtins import *
  File "/usr/lib/python2.7/site-packages/future/builtins/__init__.py", line 10, in <module>
    from future.builtins.iterators import (filter, map, zip)
  File "/usr/lib/python2.7/site-packages/future/builtins/iterators.py", line 38, in <module>
    from future import utils
  File "/usr/lib/python2.7/site-packages/future/utils/__init__.py", line 55, in <module>
    import inspect
  File "/usr/lib64/python2.7/inspect.py", line 39, in <module>
    import tokenize
  File "/usr/lib64/python2.7/tokenize.py", line 30, in <module>
    from token import *
  File "token.py", line 2, in <module>
    import requests, json
  File "/usr/lib/python2.7/site-packages/requests/__init__.py", line 95, in <module>
    from urllib3.contrib import pyopenssl
  File "/usr/lib/python2.7/site-packages/urllib3/contrib/pyopenssl.py", line 47, in <module>
    from cryptography import x509
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/__init__.py", line 7, in <module>
    from cryptography.x509.base import (
  File "/usr/lib64/python2.7/site-packages/cryptography/x509/base.py", line 14, in <module>
    from cryptography import utils
  File "/usr/lib64/python2.7/site-packages/cryptography/utils.py", line 70, in <module>
    signature = inspect.getargspec
AttributeError: 'module' object has no attribute 'getargspec'

这个错误与烧瓶有关吗?虚拟环境?尝试卸载并重新安装python。但是,无济于事。感谢有关解决问题的评论。提前致谢!!!!!

标签: pythonlinuxpython-2.7flask

解决方案


正如@CristiFati 所说,你有一个与正在使用的东西同名的文件Flask。您需要查看堆栈跟踪以查找代码库中的任何内容,在您的情况下token.py提到

如果我这样做(在外壳中),我会得到类似的错误:

mkdir test
cd test
echo "print('in token.py')" > token.py
python -c 'import flask'

如果我删除此文件,错误就会消失。


推荐阅读