我正在尝试使用Python。
try:
newbutton['roundcornerradius'] = buttondata['roundcornerradius']
buttons.append(newbutton)
按钮是一个列表。 roundcornerradius在buttondata中是可选的。
唉,这给了
buttons.append(newbutton) ^ SyntaxError: invalid syntax
我只想忽略不存在roundcornerradius的情况。我不需要报告任何错误。
答案 0 :(得分:3)
为什么不使用except
关键字
try:
newbutton['roundcornerradius'] = buttondata['roundcornerradius']
buttons.append(newbutton)
except:
pass
这将尝试第一部分,如果抛出错误,它将执行除部分
除了像这样的错误
之外,您还可以添加想要的错误错误 except AttributeError:
你也可以通过这样做得到例外错误:
except Exception,e: print str(e)
答案 1 :(得分:1)
您应该尝试异常:
try:
code may through exception
except (DesiredException):
in case of exception
如果只在尝试成功时需要填充新按钮,也可以尝试使用else
:
try:
newbutton['roundcornerradius'] = buttondata['roundcornerradius']
except KeyError:
pass
else:
buttons.append(newbutton)
没有定义异常类的单except:
将捕获引发的每个异常,在某些情况下可能不需要。
您很可能会在代码上获得KeyError
,但我不确定。
请参阅此处了解内置异常:
答案 2 :(得分:0)
如果使用except
,您必须使用finally
或try
关闭阻止。
try:
newbutton['roundcornerradius'] = buttondata['roundcornerradius']
except KeyError:
pass#omit raise if key 'roundcornerradius' does not exists
buttons.append(newbutton)
如果你知道'roundcornerradius'
的默认值 - 你不需要try ... except
newbutton['roundcornerradius'] = buttondata.get('roundcornerradius', DEFAULT_RADIUS)
buttons.append(newbutton)