8
更好地“尝试”某些东西并捕获异常或测试是否有可能首先避免异常?
我应该测试if某种东西是有效的还是只是try为了做它并捕获异常? 有没有可靠的文档说首选方法? 还有一种方法更pythonic吗? 例如,我应该: if len(my_list) >= 4: x = my_list[3] else: x = 'NO_ABC' 要么: try: x = my_list[3] except IndexError: x = 'NO_ABC' 一些想法... PEP 20说: 错误绝不能默默传递。 除非明确地保持沉默。 应该使用a try而不是an if解释为无声传递的错误吗?如果是这样,您是否通过以这种方式使用它来明确使其静音,从而使其正常运行? 我不是指只能以一种方式做事的情况;例如: try: import foo except ImportError: import baz