30517 - PYTHON PROGRAMMING FOR ECONOMICS, MANAGEMENT AND FINANCE
Department of Decision Sciences
Course taught in English
Go to class group/s: 31
CLEAM (6 credits - II sem. - OP | INF/01) - CLEF (6 credits - II sem. - OP | INF/01) - CLEACC (6 credits - II sem. - OP | INF/01) - BESS-CLES (6 credits - II sem. - OP | INF/01) - WBB (6 credits - II sem. - OP | INF/01) - BIEF (6 credits - II sem. - OP | INF/01) - BIEM (6 credits - II sem. - OP | INF/01) - BIG (6 credits - II sem. - OP | INF/01)
Course Director:
FABRIZIO IOZZI
FABRIZIO IOZZI
Prerequisites
Students attending the course are recommended to have already taken an introductory course on programming, whatever the language used.
Mission & Content Summary
MISSION
The primary goal of this course is to give students a basic introduction to object-oriented and procedural programming, using Python. Most models and examples are taken from Economics, Management and Finance.
CONTENT SUMMARY
- Primitive types and class types.
- Functions (procedures, and fruitful functions), including recursion.
- Basic statements: assignment, if-statements, loops, blocks, function calls.
- Objects and classes, including subclasses, inheritance, and overriding.
- Sequences and dictionaries.
- Testing and debugging.
- Program development; stepwise refinement (top-down design) and object-oriented design.
- Basic searching and sorting algorithms.
- A model of execution.
- Programming style considerations.
Intended Learning Outcomes (ILO)
KNOWLEDGE AND UNDERSTANDING
At the end of the course student will be able to...
- Define procedural programming language concepts (including expressions, decision statements, simple data types, Boolean logic, input/output, loop constructs, and procedures).
- Describe and explain the working of the algorithms presented in the course.
- Explain the workflow of a computer program in general and with respect to the Python programming language.
- Recognise the relationship between a problem description and program design.
- Decompose problems into simpler problems.
- Recognise the limitations of algorithms.
APPLYING KNOWLEDGE AND UNDERSTANDING
At the end of the course student will be able to...
- Use procedural programming language concepts including expressions, decision statements, simple data types, Boolean logic, input/output, loop constructs, and procedures.
- Combine programming techniques to solve problems of varying degrees of difficulty in the fields of Economic, Management and Finance.
- Refine computer programs through testing and debugging to ensure proper operation.
- Find and understand programming language documentation to learn new information needed to solve programming problems.
- Implement problem solving strategies.
- Demonstrate how basic data structures (list, graphs, trees, sets, tables) function.
- Investigate different strategies for algorithm development and evaluate these to select an appropriate solution to a given problem.
- Determine the complexity of simple algorithms.
Teaching methods
- Face-to-face lectures
- Exercises (exercises, database, software etc.)
- Case studies /Incidents (traditional, online)
- Individual assignments
- Group assignments
DETAILS
- Simple and less simple programming exercises are assigned to have students practice the language.
- Some case studies are analyzed through discussion in class.
- Individual assignments consist of readings, exercises, and multiple choice questions.
- Group assignments consist of programming task to be performed in a given time frame.
Assessment methods
Continuous assessment | Partial exams | General exam | |
---|---|---|---|
|
x | ||
|
x | ||
|
x |
ATTENDING STUDENTS
Assessment for attending students uses all three methods with one written test about the programming language and a number of individual and group assignments during the course.
NOT ATTENDING STUDENTS
Assessment for not attending students are based only on a written exam and a programming project to be discussed with the instructor.
Teaching materials
ATTENDING AND NOT ATTENDING STUDENTS
Online textbooks and references are given through the Bboard platform.
Last change 04/06/2018 10:17