• Nenhum resultado encontrado

AMBIENTE DE PROGRAMAÇÃO PYTHON

N/A
N/A
Protected

Academic year: 2021

Share "AMBIENTE DE PROGRAMAÇÃO PYTHON"

Copied!
6
0
0

Texto

(1)

Computadores e Programação

Engª Biomédica

Departamento de Física

Faculdade de Ciências e Tecnologia da Universidade de Coimbra

Ano Lectivo 2003/2004

F

F

I

I

C

C

H

H

A

A

1

1

A

MBIENTE DE

P

ROGRAMAÇÃO

P

YTHON

1.1. Objectivos

Objectivos que o aluno é suposto atingir com esta ficha: - Ser capaz de lançar o intérprete Python;

- Utilizar sem dificuldade os comandos de edição de linha; - Executar algumas instruções Python interactivamente; - Introduzir, executar e modificar scripts Python.

1.2. O Intérprete da Linguagem Python

A linguagem Python é uma linguagem interpretada. Isso significa que uma sequência de instruções sob a forma de um script (ou seja um programa) ou uma instrução isolada é traduzida para instruções de mais baixo nível (linguagem máquina) no momento de execução, em vez de ser previamente traduzida para um programa em linguagem máquina, como é o caso nas linguagens compiladas.

O intérprete que vai ser utilizado nas aulas práticas desta disciplina permite não só a execução de scripts, como a execução de instruções isoladas, interactivamente.

Como primeira tarefa pretende-se que o aluno lance o intérprete Python, procurando para tal no menu de Iniciar->Programas a pasta do Python. Nessa pasta deve encontrar algo como o que se ilustra de seguida

(2)

Clique em IDLE (Python GUI) e verá surgir uma janela como a que se mostra;

Repare no símbolo >>> . Este símbolo indica o local onde devem ser introduzidas as instruções Python que serão interpretadas assim que se carregue no <Enter>. Por vezes designa-se esse símbolo por prompt.

Por exemplo, se escrevermos cidade=”Coimbra” <Enter>1 em frente ao prompt, o intérprete vai criar internamente um objecto contendo a cadeia de caracteres “Coimbra”, dando-lhe de seguida o nome cidade. Referências posteriores a esta cadeia de caracteres terão de ser feitas através deste nome, cidade. Se por exemplo pretender visualizar na consola o conteúdo do objecto a que se refere o nome cidade poderei fazê-lo executando a instrução print cidade <Enter>. Esta sequência de duas instruções está ilustrada na figura seguinte,

(3)

Como pode verificar o intérprete utiliza várias cores para facilitar a identificação das várias palavras introduzidas e/ou apresentadas.

1.3. Scripts

O tipo de utilização do intérprete que foi apresentado na secção anterior não é muito adequado à execução de listas longas de instruções, pois nessa situação teríamos de as introduzir uma a uma, e se

cometêssemos um só erro pelo meio teríamos que recomeçar a tarefa desde o início ! O mesmo problema se coloca se pretendermos executar várias vezes a mesma sequência de instruções.

O que há a fazer quando temos muitas instruções seguidas que queremos executar sequencialmente (isto é um programa), é criar um ficheiro contendo as instruções a executar. Este ficheiro em Python designa-se por script e pode ser invocado a partir da linha de comando do intérprete.

No caso concreto do ambiente ao nosso dispôr (IDLE), podemos criar um script indo ao menu File do intérprete, escolhendo New Window. Surgirá uma janela de edição em que podemos introduzir as instruções Python constituintes do programa.

No caso que estávamos a ver, e após introduzir (dactilografar) as instruções em causa, fica assim:

Agora salve o script, indo ao menu File e clicando em Save (guarde o script num local fácil de encontrar, por exemplo no Desktop).

De seguida pode executar este script, indo ao menu Run e escolhendo Run Module. Qual é o resultado ? Reparou que a primeira linha do script começa por # ? Trata-se de uma linha de comentário, destinada a ser lida por pessoas e que não é executada pelo intérprete. Os comentários são muito úteis para incluir

(4)

informação adicional que permita a alguém que esteja a analisar o programa (por vezes o próprio criador do programa), perceber melhor o funcionamento de certas partes menos claras do script.

Vamos agora alterar o nosso programa introduzindo algumas instruções mais interessantes, por exemplo, leitura do teclado.

Usando o mesmo editor altere o script para obter o seguinte:

#

# Autor : Luis Cruz

# Data : 18 Setembro 2003 #

# Observações : O meu programa esta agora muito maior ! #

cidade="Coimbra" # Cria uma cadeia de caracteres

nome=raw_input("Qual o seu nome ? ") # Le uma cadeia de caracteres

print "Olá "+nome+" de "+cidade # Imprime uma saudação personalizada idade=input("Qual a sua idade (em anos)? ") # Le um inteiro

print "O ",nome," tem ",idade," anos,", # Imprime mensagem com idade print "ou aproximadamente ",idade*12," meses." # Apresenta idade em meses

Examine cuidadosamente o programa, e execute-o. Verifique se as instruções fazem o que esperava. Se não for esse o caso peça ajuda ao professor.

1.4. Tipos de Dados

No programa anterior foram usados dois tipos diferentes de dados, cadeias de caracteres e inteiros. As cadeias de caracteres (ou strings em Inglês), servem para representar palavras, ou pedaços de texto ou ainda qualquer informação que seja uma sequência de caracteres. No exemplo dado, mostrou-se também uma operação muito comum que consiste em criar uma cadeia de caracteres por junção de outras cadeias de caracteres, operação que em geral se designa por concatenação de cadeias de caracteres . Um exemplo é a construção em print "Olá "+nome+" de "+cidade , em que a cadeia “Olá” é

concatenada com o conteúdo de nome com a cadeia “ de ” e também com a cadeia cujo nome é cidade . Outra operação executada é a leitura de uma cadeia de caracteres, nome=raw_input("Qual o seu nome ? ").

Os dados de tipo inteiro servem como é óbvio para representar informação numérica inteira e sobre eles podemos efectuar as operações aritméticas usuais. No programa mostra-se a multiplicação de um literal numérico pelo conteúdo de uma variável inteira (em idade*12). Também se mostra como se pode pedir

ao utilizador para introduzir um inteiro colocando o valor introduzido em memória sob um determinado nome: idade=input("Qual a sua idade (em anos)? ").

A linguagem Python suporta outros tipos de dados, que iremos estudar em aulas futuras. Para já fica a saber que também pode utilizar números reais e complexos, sendo ainda suportadas as operações mais vulgares associadas a esses tipos de números.

(5)

Um número é considerado real sempre que nele figura um ponto decimal (por exemplo 3.1415) ou se este for introduzido usando a representação mantissa

e

expoente (por exemplo 31415e-4). Experimente

introduzir a instrução >>> pi=3.1415

que criará um real com valor 3.1415 com nome pi. De seguida escreva apenas >>> pi <Enter>

O resultado é o esperado ?

Verifique o tipo do objecto do objecto executando >>> type(pi)

O intérprete indica que se trata de um float , isto é, um número em vírgula flutuante, que é um dos formatos utilizados para representar números reais.

Introduza agora as instruções >>> raio=1.5

>>> perimetro=2*pi*raio >>> perimetro

o valor apresentado é obviamente o perímetro de um círculo de raio 1.5. Poderia ter obtido o mesmo valor fazendo simplesmente

>>> 2*3.1415*1.5

Os números complexos são introduzidos usando o formato <parte_real>+<parte_imaginária>j tal como em

>>> complexo=1+1j

sendo também possível introduzir um número complexo usando a função complex(), tal como se ilustra >>> complexo_2=complex(2,2)

Entre as operações suportadas pelos números complexos contam-se a obtenção da sua parte real e imaginária, como se exemplifica a seguir

(6)

e

>>> complexo.imag

Termina aqui esta breve introdução ao Python. Nas próximas aulas há mais. I´ll be back J

1.5. Exercícios sugeridos

1. Altere o programa anterior para que este peça ao utilizador além do nome (tal com está feito), também o dia, o mês e o ano de nascimento. Grave o novo programa sob o nome de

prob_1_1.py

2. Tomando por base o programa apresentado nos parágrafos anteriores, crie um programa que leia dois valores numéricos e imprima a sua soma, diferença, produto e quociente. Teste-o com (pelo menos) os pares de valores 4 e 2, 5 e 2, 2 e 3 e ainda 2 e 0. Nota: Os operadores necessários são +,-,* e /

3. Efectue os cálculos do ponto anterior interactivamente.

4. Divida 5 por 2 . Repita o cálculo dividindo 5 por 2.0. Explique a diferença. 5. Introduza um número complexo 3+4j e calcule o quadrado do seu módulo.

6. Escreva um programa que peça os comprimentos dos catetos de um triângulo rectângulo e devolva o valor da hipotenusa. Nota: Terá de incluir no início do script a instrução from math import * para poder chamar a função

Referências

Documentos relacionados

O TBC surge como uma das muitas alternativas pensadas para as populações locais, se constituindo como uma atividade econômica solidária que concatena a comunidade com os

Estudar o efeito da plastificação do ATp com glicerol nas características físico-químicas da blenda PLA/ATp; Analisar a mudança na cristalinidade dos laminados submetidos a

Era de conhecimento de todos e as observações etnográficas dos viajantes, nas mais diversas regiões brasileiras, demonstraram largamente os cuidados e o apreço

The strict partition problem is relaxed into a bi-objective set covering problem with k-cliques which allows over-covered and uncovered nodes.. The information extracted

Dessa maneira, os resultados desta tese são uma síntese que propõe o uso de índices não convencionais de conforto térmico, utilizando o Índice de Temperatura de Globo Negro e

Atualmente os currículos em ensino de ciências sinalizam que os conteúdos difundidos em sala de aula devem proporcionar ao educando o desenvolvimento de competências e habilidades

A pesquisa pode ser caracterizada como exploratória e experimental em uma primeira etapa (estudo piloto), na qual foram geradas hipóteses e um conjunto de observáveis, variáveis

O destaque é dado às palavras que abrem signi- ficados e assim são chaves para conceitos que fluem entre prática poética na obra de arte e sua reflexão em texto científico..