Web.py - 属性错误:“模块”对象没有属性“application”;

发布于 2024-11-16 09:57:25 字数 655 浏览 2 评论 0原文

我使用 web.py 编写小型 helloworld 站点,但是当我运行 python code.py 时,我收到一条错误消息:

Traceback (most recent call last):   File "E:\Python25\webpy\web\mysite.py", line 1, in <module>
    import web   File "E:\Python25\webpy\web\web.py", line 4, in <module>
    app = web.application(urls, globals()) AttributeError: 'module' object has no attribute 'application'

这是我的代码(从 web.py 的教程粘贴):

import web

urls = ( '/','Index',
)

class Index:
  def GET(self):
    return "Hello,world!"

app=web.application(urls,globals())

if __name__=="__main__":
  app.run(

PS:The web.py版本是0.35。

I use web.py write small helloworld site,but when I run python code.py I get an error message:

Traceback (most recent call last):   File "E:\Python25\webpy\web\mysite.py", line 1, in <module>
    import web   File "E:\Python25\webpy\web\web.py", line 4, in <module>
    app = web.application(urls, globals()) AttributeError: 'module' object has no attribute 'application'

Here is my code(paste from web.py's tutorials):

import web

urls = ( '/','Index',
)

class Index:
  def GET(self):
    return "Hello,world!"

app=web.application(urls,globals())

if __name__=="__main__":
  app.run(

P.S:The web.py version is 0.35.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

对风讲故事 2024-11-23 09:57:25

您遇到了名称冲突。您将包命名为 web,并尝试导入模块 web。

我假设这是在一个包裹里?

\webpy\web\mysite.py

如果是这样,当您导入 web 时,您导入的是您的包,而不是实际的 web.py。重命名它,或者重新排序你的 pythonpath。

You are runing into name collisions. You named your package web, and are trying to import a module web.

I am assuming this is in a package?

\webpy\web\mysite.py

If so when you do import web you are importing your package not the actual web.py. Rename it, or reorder your pythonpath.

那伤。 2024-11-23 09:57:25

根据上面用户的建议,我已将我的评论变成了答案以提高其可见性:

如果您首先通过调用文件 web.py 而不是 code.py 正如在 Python 教程中一样,您可能还会在您正在编码的文件夹中创建一个 web.pyc“字节代码”文件。发现名称冲突后,请确保同时删除 web.pyc 文件。

Per recommendation from a user above, I have turned my comment into an answer to improve its visibility:

If you first started by calling your file web.py, rather than code.py as in the Python tutorial, you might also have a web.pyc "byte code" file created in the folder where you are coding. After discovering the name collision, make sure you also delete the web.pyc file.

榆西 2024-11-23 09:57:25

这在我的情况下有效:在 app.yaml 文件中,替换

- url: /.*
  script: test.application

为此,

- url: /.*
  script: test.app

这解决了名称冲突。

This worked in my case: in the app.yaml file, replace

- url: /.*
  script: test.application

for this,

- url: /.*
  script: test.app

This solve the name conflict.

毅然前行 2024-11-23 09:57:25

检查当前目录是否有web.py或web.pyc文件

Check that the current directory has web.py, or web.pyc files

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文