Start here. This is the direct spoken answer to practice first.
Overview
Any and object can both receive many runtime values, but they give a type checker almost opposite instructions.
Any tells the type checker to permit operations without knowing whether they are safe; it effectively opts that value out of normal checking and can spread through later expressions. object means the value may be an instance of any Python class, but code can initially use only behavior guaranteed for every object. To do type-specific work, it must narrow with a check, pattern, protocol, or validated conversion.