python清除实例化类_在Python中,如何尝试(和排除)类的实例化?

在Python中,try/except如何实例化一个类?在

例如,我现在正在处理一个GitHub脚本:from github3 import login

user = login(username, password)

一开始,我以为这很简单:

^{pr2}$

但是,如果我强制执行一个异常(例如,提供错误的参数),那么我不会看到任何异常:$ python my-script.py -u 1 -p 1; echo $?

name 'pw' is not defined

0

如果我再试一次,但是从组合中去掉try/except,我得到了我期望看到的异常:$ python my-script.py -u username -p password; echo $?

Traceback (most recent call last):

File "delete-all-gists.py", line 19, in

user = login(u, pw)

NameError: name 'pw' is not defined

1

我不可能是唯一一个问这个问题的人,但我恐怕我的搜索功能可能会让我失望。。。在

更新

事实上,正如评论中提到的,当我问这个问题时,我似乎闭上了眼睛。。。在

我认为抛出我的是github3的login()方法在提供错误的用户名/密码时没有引发任何异常。例如:from github3 import login

u = 'foo'

p = 'bar'

try:

user = login(u, p)

except Exception, e:

print e

退货:

没什么。没有错误,例外或任何东西。在

然而,正如预期的那样,以下情况确实引发了一个例外:from github3 import login

u = 'foo'

p = 'bar'

try:

user = login(username, p)

except Exception, e:

print e

退货:name 'username' is not defined

当然,这是因为我故意提供了一个不存在的变量作为login()方法的username参数,以强制引发异常。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值