Code |
14633
|
Year |
1
|
Semester |
S1
|
ECTS Credits |
6
|
Workload |
PL(30H)/T(30H)
|
Scientific area |
Informatics
|
Entry requirements |
N/A
|
Mode of delivery |
Face-to-face.
|
Work placements |
Not applicable.
|
Learning outcomes |
This course is designed to equip students with the following competencies: (i) understanding data types and syntax used in Python; (ii) the ability to develop and structure dynamic programs in Python, employing relevant data structures; (iii) the skill to organize and segment programs in Python to effectively partition functionalities for problem-solving; and (iv) proficiency in reading and producing files while managing errors/exceptions that arise during program execution, in addition to enhancing program functionalities with external Python libraries. In terms of skills, students will be capable of: structuring abstract thinking to interpret problems presented in natural language and translating them into Python programs; writing dynamic Python programs while addressing errors/exceptions that may occur; segmenting programs to partition functionalities based on specific problem requirements; and utilizing data structures and libraries that are suitable for effective problem-solving.
|
Syllabus |
1. Introduction to Python Programming 2. Basic Data Types 3. Tests and Conditions 4. Iterations (Repetition Statements) 5. Data Structures: Lists and Dictionaries 6. Iterations in Data Structures 7. Functions 8. Classes 9. Python Libraries 10. Reading and Writing Files 11. Tests and Exceptions
|
Main Bibliography |
Portela, F. and Pereira, T. (2024). Introdução à Algoritmia e Programação em Python. FCA Sobral, S. (2023). Introdução à Programação usando Python. Silabo. Carvalho, A. (2021). Práticas de Python - Algoritmia e Programação. FCA. Matthes, Eric. (2019). Python Crash Course, 3rd Edition. No Starch Press, 2023. 2ª Edição Downey, A. (2015). Think Python - How to Think Like a Computer Scientist. O'Reiley. Green Tea Press Severance, C. (2013). Python for Everybody - Exploring Data Using Python Miller, B., and Ranum, D. (2011). Problem Solving with Algorithms and Data Structures using Python: Interactive Edition
|
Teaching Methodologies and Assessment Criteria |
The content of this Curriculum Unit (CU) is presented through a combination of expository and demonstrative methodologies, facilitating the delivery of information necessary for students to assimilate the concepts introduced and apply them through practical exercises. To assess both theoretical knowledge and practical application, two evaluative assessments (P1 and P2) are conducted, each contributing equally to the final grade (CF), as follows:
CF = 0.5 x P1 + 0.5 x P2
A student is deemed to have successfully passed if they achieve a grade of 9.5 or above. Those who meet this passing criterion are exempt from the final exam; however, they retain the opportunity to improve their final grade, which is the higher grade between the exam and the assessments of the teaching-learning period. To summarize:
CF < 5.5 (on a scale of 20) => Failed and Not Eligible for Exam CF >= 9.5 (on a scale of 20) => Passed and Exempt from Exam Remaining cases => Failed and Eligible for Exam
|
Language |
Portuguese. Tutorial support is available in English.
|