相关疑难解决方法(0)

如果首先可以避免异常,最好"尝试"某些东西并捕获异常或测试?

我应该测试if某些东西是有效的还是只是try为了捕获异常?

  • 有没有可靠的文件说一种方式是首选的?
  • 一种方式更pythonic

例如,我应该:

if len(my_list) >= 4:
    x = my_list[3]
else:
    x = 'NO_ABC'
Run Code Online (Sandbox Code Playgroud)

要么:

try:
    x = my_list[3]
except IndexError:
    x = 'NO_ABC'
Run Code Online (Sandbox Code Playgroud)

一些想法......
PEP 20说:

错误不应该默默地传递.
除非明确沉默.

应该使用a try而不是if被解释为默认传递的错误?如果是这样,你是否通过这种方式使用它来明确地对它进行静音,从而使它成为可能?


不是指的情况下,你只能做的事情1路; 例如:

try:
    import foo
except ImportError:
    import baz
Run Code Online (Sandbox Code Playgroud)

python if-statement exception-handling try-catch pep

125
推荐指数
5
解决办法
4万
查看次数

Python:`如果键入dict`与`try/except` - 这是更具可读性的成语?

我有一个关于习语和可读性的问题,似乎有一个针对这个特殊情况的Python哲学冲突:

我想从字典B中构建字典A.如果B中不存在特定的键,则不执行任何操作并继续.

哪种方式更好?

try:
    A["blah"] = B["blah"]
except KeyError:
    pass
Run Code Online (Sandbox Code Playgroud)

要么

if "blah" in B:
    A["blah"] = B["blah"]
Run Code Online (Sandbox Code Playgroud)

"做并请求原谅"与"简单和明确".

哪个更好?为什么?

python idioms readability code-readability defaultdict

86
推荐指数
4
解决办法
6万
查看次数

计算文本文件中字母的频率

在python中,如何遍历文本文件并计算每个字母的出现次数?我意识到我可以使用'for x in file'语句来完成它然后设置26左右,如果elif语句,但肯定有更好的方法来做到这一点?

谢谢.

python text

5
推荐指数
1
解决办法
2万
查看次数