Python programming I+II
The purpose of this course is to teach general programming concepts using the Python language as an instruction tool.
Instructor: András Aszódi.
Topics
The course consists of two major parts that take 2 half-days each.Part I
On days 1 and 2 we start from the foundations and learn the very basics of Python programming.
- Day 1: Introduction to Python: basic principles. Python data structures: strings, tuples, lists, dictionaries, sets.
- Day 2: Object-oriented programming: how to model coffee machines in Python. Inheritance (base and derived classes), polymorphism.
Part II
On days 3 and 4 we learn how to design, develop and test object-oriented code in Python. Kindly note that every participant will work on the same project because we don't have the resources to offer individual guidance.
- Day 3: we write a Python class that can convert a BED-formatted line into a GFF-formatted line. We will learn how to design and develop Python packages with unit tests.
- Day 4: we write a script to convert BED files to GFF using the class above. We will learn command-line option processing, file input-output, error handling with exceptions.
Exercises
Online exercises are available when this course is running. Please select the option "Python language" from the dropdown in the "Request an exercise notebook" form.
Out of scope
Applied data analysis of any kind.
Prerequisites
Good typing skills are essential because the course involves writing quite a lot of code.
Some basic programming knowledge (e.g. having attended the UNIX scripting and/or the R language courses) is advantageous, but not strictly necessary. Everything will be explained!
Practical information
Number of participants: minimum 10, maximum 20.
Length: Both Part I and Part II take two half-days (4 hours) each, i.e. four half-days (16 hours) in total.