- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Python 编写一个简单的自动化脚本,它可能会在多个位置引发异常。在他们每个人中,我都想记录一条特定的消息并退出程序。为此,我在捕获异常并处理它(执行特定的日志记录操作等)后引发 SystemExit。
在 main 的顶层调用中,我执行以下操作:
if __name__ == "__main__":
thử:
chủ yếu()
except SystemExit: # handled exception
sys.exit(1)
except: # any unhandled exception
logging.error('Unexpected error: ', exc_info=True)
sys.exit(2)
然而,使用裸 except 是不受欢迎的。是否使用“异常树”,其中我使用 bare except 以非标准方式指定“除了我处理的异常之外的任何东西”?有没有更好的方法来实现这一目标?我仍然想记录这些未处理的异常,即使它们没有被处理。
编辑:引发 SystemExit 以注意已处理异常 - 无论我的情况是什么异常,我总是想停止运行脚本,因为任何失败都应该导致绝对失败。
我问这个的主要原因是 PEP8 似乎考虑使用 bare except 作为错误,即使我可以使用 except BaseException,它应该只是语法差异。一种方式比另一种方式更标准,还是有另一种标准途径来实现这一点?
1 Câu trả lời
裸异常会捕获您不想捕获的内容,例如 GeneratorExit
。这样做:
except Exception as details:
logging.error('Unexpected error: {0}'.format(details))
关于Python 异常 - 捕获除预期之外的所有异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53591475/
Tôi là người mới làm quen với Java nên hãy tha thứ cho tôi nếu tôi mắc phải một lỗi đơn giản nhưng tôi không chắc mình sai ở đâu, lỗi tôi nhận được là "Expected .class, expected identifier, not declaration, ';' expected." Tôi đã thử nhiều cách tiếp cận khác nhau và từ những cách này tôi nhận được
Câu hỏi này đã có câu trả lời ở đây: chai test array equality doesn't work as expected (3 câu trả lời) 3 năm trước
Tôi đang học Java (xin lỗi vì tiếng Anh của tôi kém, đó không phải là ngôn ngữ mẹ đẻ của tôi) và khi tôi thực thi khối "try-finally" trong mỗi "try" tôi nhập vào Eclipse (JavaSE-1.7), thông báo sau xuất hiện
Tôi nhận được hai lỗi nêu rõ lỗi cú pháp trên mã thông báo, thay vào đó là ConstructorHeaderName và lỗi cú pháp trên mã thông báo "(", < dự kiến trên dòng: mTM.
Tôi không tìm ra lỗi. Eclipse báo lỗi này cho tôi. Mỗi { } đều được khớp. Xin hãy giúp đỡ. Nhiều dấu hiệu tại dòng này - Lỗi cú pháp trên mã thông báo “)”,
Mã: import java.awt.*; import javax.swing.*; import java.awt.event.*; public class DoubleIt mở rộng
Tôi đang viết mã bằng python (Vs code) và tôi gặp lỗi này: Expected ")" Pylance Lỗi xảy ra tại: def main() Tôi đã thử chạy main và nó in ra màn hình. Tôi đã tìm kiếm trên Google
Tôi đang cố gắng sử dụng các hàm bất đồng bộ như được gợi ý trong tài liệu. Nhưng tôi nhận được lỗi này mã thông báo không mong muốn, mong đợi ( hàm async getMoviesFromApi() { thử
Đã đóng. Câu hỏi này không đáp ứng được hướng dẫn của Stack Overflow. Đã đóng. Câu hỏi này cần tập trung hơn. Hiện tại không chấp nhận câu trả lời. Bạn muốn cải thiện vấn đề này? Cập nhật câu hỏi để nó đúng chủ đề
Đã đóng. Câu hỏi này không đáp ứng được hướng dẫn của Stack Overflow. Đã đóng. Câu hỏi này cần tập trung hơn. Hiện tại không chấp nhận câu trả lời. Bạn muốn cải thiện vấn đề này? Cập nhật câu hỏi để nó đúng chủ đề
Dòng đầu tiên chứa số nguyên p biểu thị độ dài của mảng. Dòng thứ hai chứa các số nguyên phân cách bằng dấu cách mô tả từng phần tử trong mảng. Dòng thứ ba in ra một số nguyên biểu thị số mảng âm. gói asgn3; nhập java.util.*
Được rồi, tôi là người mới bắt đầu và tôi phải sửa mã ngôn ngữ biểu thức Java này để hoạt động trong hệ thống của tôi (Windchill) nhưng có vẻ như tôi đang thiếu một cái gì đó trong cú pháp: LWCNormalizedObject lwc =
Tôi không thể biên dịch chương trình của mình! Tôi nghĩ là tôi thiếu dấu ngoặc nhọn, nhưng tôi không thấy thiếu ở đâu! import javax.swing.*; import java.awt.*;
Tôi gặp vấn đề với mã jQuery của mình, Firebug đưa ra cảnh báo: Cần có bộ chọn. Đây là mã: $("img[id$='_tick']").each(function() { $(this).c
Tôi có vấn đề với lớp Fountainofyouth mới của mình. Sau khi cố gắng xây dựng toàn bộ dự án, trình gỡ lỗi hiển thị cảnh báo: chỉ có danh sách trình khởi tạo mở rộng khả dụng
Tôi đã chuyển từ Java sang CPP và đang gặp khó khăn trong việc xây dựng chuỗi hàm tạo, mà tôi nghĩ đó là gốc rễ của vấn đề. Tệp tiêu đề của tôi như sau: public: GuidedTour(); GuidedTour(string
Với những điều sau đây for(var i=0; i< data.cats.length; i++) list += buildCategories(data.cats[i]); jsLint cho tôi biết rằng Expect
我有这个 json,但 Visual Studio Code 在标题中给了我警告。 [ { "title": "Book A", "imageUrl": "https:
我正在尝试编写一个有条件地禁用四个特殊成员函数(复制构造、移动构造、复制赋值和移动赋值)的包装类,下面是我用于测试目的的快速草稿: enum class special_member : uint8_
所以我用 F# 编写了一个非常简单的程序,它应该对 1000 以下的所有 3 和 5 的倍数求和: [1..999] |> List.filter (fun x -> x % 3 = 0 || x %
Tôi là một lập trình viên xuất sắc, rất giỏi!