Python isinstance()含逻辑or的小问题

请教一个小问题,如下图所示,为什么[64]和[65]的结果不一样?
img
不知道这是isinstance()的问题还是逻辑or的问题?or是不是应该从左至右若满足其一,则结果就为True?
感谢。

几个知识点:

  1. isinstance 接受2个参数,第一个参数是变量,第二个参数是类型 ,这是固定的,和ro什么的没关系
  2. 逻辑短路,or运算中,如果左边的变量为真,那么就直接返回左边的变量,比如int or float的结果是intfloat or int 的结果是float

下面来看代码
第一个:
isinstance(1,float or int ) 等于 isinstance (1, float ),结果当然为假

第二天:
isinstance(1, int or float) 等于 isinstance (1, int),结果当然为真