Difference between base.cam and base.camera

        pl =  base.cam.node().getLens()
        pl.setFov(80)
        base.cam.node().setLens(pl)
        base.camera.reparentTo(self.node)

I heard that base.cam is just a child of base.camera.

but If I change the code above to like this,

        pl =  base.cam.node().getLens()
        pl.setFov(80)
        base.camera.node().setLense(pl)
        base.camera.reparentTo(self.node)

it won’t work.

Why is this not working?
(sorry if I’m posting too much questions…)

base.camera refers to a PandaNode above base.cam. base.cam is pointing to a Camera, which is a special kind of PandaNode that has setLens, but ordinary PandaNodes don’t have setLens.