FPYT1-IM06 Itermediate Python Programming
FPYT1-IM06 Itermediate Python Programming
- Course description
- Course codeFPYT1-IM06
- Level of study5.1
- Program of studyPython for Finance
- Credits6
- Course coordinatorTor Kringeland
Building upon the foundational skills acquired in Introductory Python Programming, this course aims to deepen candidates' understanding of Python's more advanced data structures, including those available in external libraries like NumPy and Pandas. These libraries are especially beneficial for manipulating and analysing financial data.
The course builds on competence from Introductory Python Programming. In Intermediate Python Programming, candidates will gain further knowledge of a selection of complex data types (including from external libraries such as NumPy and Pandas) useful for handling financial data. The candidates will gain experience in looking up documentation and learning about external Python libraries, which is essential when they will apply their knowledge to their own projects. Finally, the candidates will learn how to install Jupyter Notebook and use notebooks for experimentation.
Knowledge of and experience in using external libraries is essential in preparing the candidates on the second phase of the program, where the focus is on financial data analytics. For their own projects the candidates need to be able to work independently on construing which libraries they might need for a project and be able to look up relevant documentation.
The candidate:
- has knowledge of several different data structures (internal and external) available to a Python programmer and knows which one to choose for a particular problem
- knows what object-oriented programming in Python is
- has knowledge of different types of problems that cause unexpected behavior when attempting to run a Python script
- has knowledge with installing and importing external libraries
- has fundamental knowledge about NumPy and Pandas
- has insight into the standards of quality requirements for robust scripting
- has basic knowledge of the field of programming
- can update their vocational knowledge of the Python programming language
- understands the importance of unit testing and exception handling for creating robust scripts that can anticipate and recover from errors
The candidate:
- can apply vocational knowledge to solve syntax, runtime and semantic errors in Python scripts
- can apply vocational knowledge to create, modify and instantiate objects
- can study a given solution specification and translate the solution into Python code
- can apply vocational knowledge to install and look up documentation of external libraries
- masters the use of data structures in Python like lists, sets, dicts and tuples
- masters the installation, configuration and use of Jupyter Notebook to create simple reports
- masters importing data from external file sources
- can find information about and solutions to known error codes and debug messages
- can study a situation and recommend whether it’s more efficient to use recursion vs. iteration
The candidate:
- understands the ethical principles that apply in programming
- has developed an ethical attitude in relation to coding
- can carry out work based on the needs of selected target groups
- can build relations with other programmers on community forums
- can build relations with other developers in a manner that follows the ethical guidelines, social norms and conventions of online forums and knowledge bases
- can build relations, collaborate and communicate with development teams building financial solutions
- can develop basic Python scripts to automate tasks relevant to their job description in the finance industry
In this course, the following teaching and learning methods can be applied, but are not limited to:
- Lecture: Educator-led presentations or activities providing knowledge, skills, or general competencies in the subject area.
- Group work: Collaborative activities where students work together to solve problems or complete tasks.
- Tutoring: One-on-one or small group sessions with an instructor for personalized guidance and support.
- Student presentations: Opportunities for students to demonstrate their understanding of course material by presenting to peers.
- Online lessons: Digital content delivered via an online learning platform.
- Guidance: Individualized advice and direction from instructors to support students in their learning journey.
- Workshops: Practical sessions focused on hands-on application of theoretical concepts or skills.
- Self-study: Independent study where students engage with course material on their own without any teacher support.
Teaching materials, reading lists, and essential resources will be shared in the learning platform and software user manuals where applicable.