代码之家  ›  专栏  ›  技术社区  ›  BlockchainProgrammer

烧瓶资源导入错误

  •  1
  • BlockchainProgrammer  · 技术社区  · 6 年前

    我在YouTube上做了以下教程: https://www.youtube.com/watch?v=s_ht4AKnWZg

    这是我的代码:

    from flask import Flask, request
    from flask_restful import Resource, Api
    
    app = Flask(__name__)
    api = Api(app)
    
    class HelloWorld(Resource):
        def get(self):
            return {'about':'Hello World!'}
    
        def post(self):
            some_json = request.get_json()
            return {'you sent': some_json}, 201
    
    class Multi(Resource):
        def get(self, num):
            return {'result': num*10}
    
    api.add_resource(HelloWorld, '/')
    api.add_resource(Multi, '/multi/<int:num>')
    
    if __name__ == '__main__':
        app.run(debug=True)
    

    现在,当我运行脚本时,我得到以下错误:

    /home/one/systemx/test_api$ python flask_restful.py
    Traceback (most recent call last):
      File "flask_restful.py", line 2, in <module>
        from flask_restful import Resource, Api
      File "/home/one/systemx/test_api/flask_restful.py", line 2, in <module>
        from flask_restful import Resource, Api
    ImportError: cannot import name Resource
    

    代码是1:1,就像视频中那样。有人知道问题出在哪里吗?

    1 回复  |  直到 6 年前
        1
  •  3
  •   Gastón Avila    6 年前

    正如@tobey在评论中指出的那样,您需要将程序重命名为 app.py 因为python试图找到 flask_restful 它会找到你的程序而不是包。