This questionnaire is not perfectly suitable for studying in order to catch up; however, the questions should cover a broad range of topics around our course's scope and highlight potential weak points.
- Have you worked with Python 3 before?
- Do you know how to run Python scripts?
- Did you install pip packages before?
- Did you use Jupyter Notebooks before?
- Do you know how to assign variables?
- How to use for and while loops?
- How to define functions with default arguments?
- How to use *args, **kwargs and variable unpacking?
- When does call by object reference happen and why might it lead to unexpected problems?
- How is a class defined and instantiated?
- How does inheritance work? Why use super()?
- How is a generator defined and iterated?
- What is a list comprehension?
- How can the entries of a list be doubled using a list comprehension?
- How to get only even entries of a list using a list comprehension?
- How to get the Collatz successor of each number in a list using a list comprehension and a conditional expression?
- How is a dictionary defined? How can you get a value?
- What ways can a dict be iterated?
- What are dictionary comprehensions?
- What are lambda functions? Why are they used?
- What is map()?
- How to use the key argument in sorted()?
- Have you worked with numpy before?
- What are ndarrays? Why use them?
- What are shape and dtype? How can both be altered?
- What is the difference between reshape and transpose? When can you safely use reshape?
- How to matrix multiply two ndarrays?
- What is the axis argument in ndarray.sum()?
- How to read all lines from a file?
- What is JSON? How to read/write JSON data in Python?
Linux Command line/Remote work
- How to compose shell commands with pipes and input/output redirection?
- How to pass each line from an input file to the same command as an argument, and run all resulting processes in parallel?
- How to find out how many lines in a text file contain the strings "cat" or "hat"?
- How to download and then unpack a zip file from the command line?
- How to log into a remote machine via SSH?
- What is an SSH public key and how to create one?
- How to make sure a program continues to run after you log out?
- How to transfer a file to a remote machine using only an SSH connection?
Machine Learning Basics
- What is the difference between supervised and unsupervised learning?
- What is the difference between regression and classification?
- What is gradient descent, and how does it work?
- What are precision, recall and accuracy, and how are they computed?
- What is overfitting, why is it a problem, and how to detect and avoid it?