Python 对象特性及迭代机制详解
1. contextlib.suppress 包的使用
contextlib.suppress 是一个实用工具包,它能进入上下文管理器。当出现指定的异常时,程序不会失败。这类似于在 try/except 块中运行相同的代码并处理或记录异常,但不同的是,调用 suppress 方法能更明确地表明这些异常是我们逻辑控制的一部分。
示例代码如下:
import contextlib
with contextlib.suppress(DataConversionException):
parse_data(input_json_or_dict)
在这个例子中,异常的出现意味着输入数据已经是预期的格式,无需进行转换,因此可以安全地忽略该异常。
2. Python 对象的属性和方法
在 Python 中,对象的所有属性和函数默认都是公开的,这与其他语言不同,其他语言的属性可以是公共、私有或受保护的。不过,Python 有一些约定:以单下划线开头的属性通常被视为对象的私有属性,虽然外部对象可以调用,但按照约定不应该这样做。
以下是一个示例:
class Connector:
def __init__(self, source):
self.source = source
self
超级会员免费看
订阅专栏 解锁全文
8124

被折叠的 条评论
为什么被折叠?



