I've never read a Python book, with the resouces available on the net, and the profs at school I find I can find everything I need.. so I save my money (my text books cost me enough). Check out python.org though, they have a breakdown of EVERYTHING with examples.

As for your input question...... input is used only for numbers for text you are going to want to use raw_input for characters. Why the code works this way I don't know... but that's how it works... raw_input is the next section in my tutorial after the input portion..