To answer your first question: I would recommend Introduction to CS and programming using Python on Edx is free, and also Python courses on Teamtreehouse paid membership but free for 30days.
There are quite a few good channels on YouTube personally I love Socratica but look around and see which one you like the most.
Books I don't think I ever picked one up for python so can't help you there.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.