Try-except子句,除了代码以外是空的

Ehs*_*n88 26 python try-except

有时您不希望在部件中放置任何代码,except因为您只是希望确保代码运行时没有任何错误但是没有兴趣捕获它们.我可以在C#中这样做:

try
{
 do_something()
}catch (...) {}
Run Code Online (Sandbox Code Playgroud)

我怎么能在Python中做到这一点?,因为缩进不允许这样做:

try:
    do_something()
except:
    i_must_enter_somecode_here()
Run Code Online (Sandbox Code Playgroud)

顺便说一句,也许我在C#中所做的事情也不符合错误处理原则.如果你对此有所了解,我会很感激.

And*_*ndy 39

try:
    do_something()
except:
    pass
Run Code Online (Sandbox Code Playgroud)

您将使用pass语句.

pass语句什么都不做.当语法需要语句但程序不需要操作时,可以使用它.


A.J*_*pal 11

用途pass:

try:
    foo()
except: 
    pass
Run Code Online (Sandbox Code Playgroud)

A pass只是一个没有占位符的占位符,它只是传递以防止passs.

来自文档:

pass语句什么都不做.当语法需要语句但程序不需要操作时,可以使用它.

正如您所看到的,我们想要创建一个空白函数,它在pass没有正文的情况下引发:

try:
    foo()
except: 
    pass
Run Code Online (Sandbox Code Playgroud)

但是,pass取代那个空白:

try:
    foo()
except: 
    pass
Run Code Online (Sandbox Code Playgroud)