Learning Scientific Programming with Python is published by Cambridge University Press (ISBN: 9781107428225).
This book is well illustrated and is supported by an extensive collection of resources online in the book's website, scipython.com. This site has code listings and solutions to exercises. I would readily recommend this book to any student (or even a colleague) who wishes to achieve a solid foundation in Python programming.
Learning Scientific Programming with Python has also been kindly received by several Amazon reviewers.