use*_*023 2 python format coding-style try-catch
我经常看到人们写这样的代码:
try: some_function()
except: print 'something'
Run Code Online (Sandbox Code Playgroud)
当我考虑更清洁时,这样做:
try:
some_function()
except:
print 'something'
Run Code Online (Sandbox Code Playgroud)
我想弄明白为什么?将代码放在与try相同的行上是否存在一些固有的速度差异?(有点像"内衬",但不是真的).
我认为前者不是一个好习惯.人们可能会认为try和except块足够短,可以写成一行.
从PEP8引用:
虽然有时可以将if/for/while与小体放在同一行上,但是不要对多子句语句执行此操作.还要避免折叠如此长的线条!
当然不:
Run Code Online (Sandbox Code Playgroud)try: something() finally: cleanup()
(参考:http://www.python.org/dev/peps/pep-0008/)
所以,总是写一个单独的行尝试是一个很好的做法.