cket）也和文件共同拥有许多相同的方法。然而套接字缺少codice_8方法，不能用于codice_6可以使用的所有地方。这体现了鸭子类型的可伸缩性：一个类似file的对象可以实现它有能力实现的方法，且只能被用于它有意义的情形下。EAFP原则描述了异常处理的使用。例如相对于检查一个自称为类似Duck的对象是否拥有一个"quack()"方法（使用codice_10），人们通常更倾向于用异常处理把对"quack"的调用尝试包裹起来：try:except (AttributeError, TypeErro