python type error是什么意思_Python 报错 TypeError:’DoesNotExist’对象不可调用

2022-11-15 11:26:43 浏览数 (1)

公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:codedq,发送下载链接帮助你免费下载!

本博客日IP超过2000,PV 3000 左右,急需赞助商。

极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:codedq,之前的微信号好友位已满,备注:返现

饿了么大量招人,我内推!Java 方向!薪资不设上限,工作年龄不限!工作地点限魔都,可电话面试!简历,发我微信:codedq

所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序

这两年,Python 再次大火。导致越来越多的人学 Python,但是新手学 Python 一般会遇到各种各样的问题。

今天,我又在 Stackoverflow 上看到了一个 Python 非常著名的 TypeError 错误问题:DoesNotExist 对象不可调用。今天我们一起来看看这个问题该如何解决!

TypeError: ‘DoesNotExist’ object is not callable

我们现在看下面这个代码块:

try:

u = User.objects.get(email__iexact=useremail)

except User.DoesNotExist:

这段代码并不总是曝出 DoesNotExist 异常,而是随机的报错。

File “/srv/myapp/registration/models.py”, line 23, in get_or_create_user

u = User.objects.get(email__iexact=useremail)

File “/usr/local/lib/python2.6/dist-packages/django/db/models/manager.py”, line 132, in get

return self.get_query_set().get(*args, **kwargs)

File “/usr/local/lib/python2.6/dist-packages/django/db/models/query.py”, line 349, in get

% self.model._meta.object_name)

TypeError: ‘DoesNotExist’ object is not callable

错误详情大概如上所示。正常情况下,这段代码是有效的。但它却总是随机的抛出 DoesNotExist 错误。

在 Stackoverflow 上,有人建议我们将下面的代码进行替换。

try:

do_something()

except User.MultipleObjectsReturned, User.DoesNotExist:

pass

上面的代码改为下面这种方式。

try:

do_something()

except (User.MultipleObjectsReturned, User.DoesNotExist):

pass

如果是 Python 2.6 以上的版本,可以用下面的代码。

except User.MultipleObjectsReturned as User.DoesNotExist:

User.MultipleObjectsReturned 异常的实例覆盖 User.DoesNotExist。

当相同的进程稍后处理一个不同的请求时,你会得到 TypeError 是因为您的代码尝试调用已替换 User.DoesNotExist 的异常实例。

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号1:xmtxtt(5000人已满),微信号2:xttblog(5000人已满),微信号3:codedq(超3800)。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/234968.html原文链接:https://javaforall.cn

0 人点赞