This book gives a comprehensive introduction to Python coding for students of undergraduate Physics, Mathematics, Computer Science and Engineering through solving real-life, scientifically relevant and subject-oriented examples. The book is mainly concerned with numerical methods in physics. Starting with general programming concepts such as operators, decision making, loops and functions within the core Python 3 language, this book moves onto the NumPy, SciPy and Matplotlib libraries for numerical programming and data plotting at advanced level. In this book, the applications of python in many branches of physics, mainly Classical Mechanics, Quantum Mechanics, Thermal Physics, Statistical Mechanics, Solid State Physics, Electronics, Electrodynamics, Statistics and Mathematical Physics have been discussed to cover the UGC CBCS Undergraduate Physics (Honours and General) Curriculum. All Python codes and scripts written in this book had been tested beforehand. The materials of this book will help the students to deal with their problems and develop their skills in writing python code.