Curso Técnico Superior Profissional

Robótica e Inteligência Artificial

Área Científica

481 – Ciências Informáticas

Duração

Semestral

Unidade Curricular

Programação II

ECTS

3

Horas de Contacto Teórico Práticas

50h ( TP 50h )

Objetivos da Aprendizagem

1) Compreender os conceitos fundamentais da linguagem Python e ser capaz de escrever programas que utilizam variáveis, condicionais, ciclos, funções e manipulação de strings.
2) Utilizar estruturas de dados mais complexas, como listas, dicionários e matrizes, para criar aplicações que leem e escrevem ficheiros e utilizam bibliotecas externas.
3) Escrever código Python eficiente e organizado, seguindo as boas práticas de programação.
4) Compreender o conceito de recursão e ser capaz de utilizar a programação recursiva em Python para implementar algoritmos de pesquisa e ordenação de dados mais avançados.

Conteúdos Programáticos

1. Introdução à linguagem Python:

1.1. História e evolução da linguagem Python;
1.2. Características da linguagem Python;
1.3. Ferramentas para desenvolvimento em Python.

2. Elementos da programação imperativa:

2.1. Variáveis: tipos de variáveis;
2.2. Atribuição: operador de atribuição (=), atribuição múltipla;
2.3. Estruturas Condicionais: if, else, elif, operadores relacionais e lógicos;
2.4. Ciclos: for e while

3. Funções:

3.1. Definição e declaração de funções;
3.2. Variáveis locais e globais.

4. Cadeias de caracteres:

4.1. Definição de strings;
4.2. Manipulação de strings: concatenação, fatiamento, formatação;
4.3. Métodos de strings: upper, lower, split, replace.

5. Vetores e matrizes:

5.1. Definição, criação, indexação e fatiamento de listas;
5.2. Operações com listas: adição, remoção, ordenação;
5.3. Definição, criação de matrizes, indexação, fatiamento de matrizes.

6. Dicionários:

6.1. Definição, criação e indexação de dicionários;
6.2. Operações com dicionários: adição, remoção, modificação.

7. Entrada e saída de dados:

7.1. Leitura e escrita de arquivos: open, read, write, close;
7.2. Entrada e saída padrão: input, print.

8. Bibliotecas de funções:

8.1. Bibliotecas padrão: math, random, time;
8.2. Importação de bibliotecas externas com pip.

9. Regras para escrita de programas:

9.1. Boas práticas de organização de código em Python;
9.2. Estilo de código: PEP 8.

Bibliografia e recursos didáticos recomendados

Python Basics: A Practical Introduction to Python 3, David Amos, Dan Baker, Joanna Jablonski e Fletcher Heisler, 1ª edição, 2021.
Python for Everybody: Exploring Data in Python 3″, Charles Severance, 1ª edição, CreateSpace Independent Publishing Platform, 2016.
Programação em Python – Fundamentos e Resolução de Problemas, 1ª edição, Ernesto Costa, FCA – Editora de Informática, 2015.
Python Crash Course, Eric Matthes,1ª edição, No Starch Press, 2015.
Fluent Python, Luciano Ramalho, 1ª edição, O’Reilly Media, 2015.
Python Cookbook, David Beazley e Brian K. Jones, 3ª edição, O’Reilly Media, 2013.
Learning Python, Mark Lutz, 5ª edição, O’Reilly Media, 2013.