UCL WIKI

UCL Logo
Child pages
  • Python
Skip to end of metadata
Go to start of metadata

Python Graduate Programming Course

Introduction

Python is a high-level, object-oriented language with a clear and expressive syntax which facilitates rapid development. Its large and comprehensive standard library provides high-quality algorithms to achieve a wide variety of tasks. Although frequently used as a scripting language, it is increasingly being used to develop fully-featured programs, especially for scientific applications, thanks to an excellent library of numerical tools, numpy. A full syllabus is available here.

Timetable

A timetable for the next Graduate Programming course in Python will appear here when details are available.

Suggested Reading

  • C. Hill, "Learning Scientific Programming with Python", CUP (2016)
  • M. Lutz, “Learning Python”, 4th ed., O’Reilly (2009)
  • M. Pilgrim, “Dive Into Python”, APRESS (2004); also available online for free at http://www.diveintopython.net/
  • M. Dawson, “Python Programming for the Absolute Beginner”, 3rd ed., Course Technology PTR (2010)
  • D. M. Beazley, “Python Essential Reference”, Addison Wesley (2009)
  • W. J. Chun, “Core Python Programming”, 2nd ed., Prentice Hall (2006)
  • S. Oliveira and D. Stewart, “Writing Scientific Software: A Guide to Good Style”, CUP (2006)

Slides

  1. Python-1.key.pdf
  2. Python-2.key.pdf
  3. Python-3.key.pdf
  4. Python-4.key.pdf
  5. Python-5.key.pdf
  6. Python-6.key.pdf
  7. Python-7.key.pdf

Practicals

  1. Using the Python shell as a calculator
  2. The math module
  3. Iterable objects
  4. String slicing
  5. lists
  6. Stirling's approximation
  7. Analysing a list of element names
  8. The 10 brightest stars in the night sky
  9. Evaluating the Madelung constant
  10. Representing a polynomial as a list
  11. The range and height of a projectile
  12. The Hailstone sequence and the Collatz conjecture
  13. Monte Carlo evaluation of π
  14. Numerical integration by the trapezoidal rule
  15. Plotting CO2 concentrations over time
  16. The Julia set
  17. Monte Carlo evaluation of the error function
  18. Modelling a polymer as a random walk
  19. Analysing weather data from Heathrow airport with NumPy
  20. The Rotational energy levels of the NO radical
  21. The Planck Law
  22. Spectrum fitting
  23. Measuring the Coefficient of Restitution
  • No labels