Aula 3: strings, scripts, variáveis

Documentos relacionados
Oficina de Programação em Python direcionada para o desenvolvimento de jogos

Variáveis e Entrada de Dados Marco André Lopes Mendes marcoandre.googlepages.

MC-102 Aula 02 Shell Interativa, Programa Básico, Variáveis, Atribuições, Tipos Simples. Instituto de Computação Unicamp

Mini apostila de Python - Oficina de Vestibulandos. PET Computação - UFPR September 2016

Aula 2: introdução ao Python, terminal interativo e operações

Entrada e saída. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá

Introdução a Programação. Curso: Sistemas de Informação Programação I José R. Merlin

Prof. Esp. Andrew Rodrigues 1

Fundamentos de Lógica e Algoritmos. Aula 3.1 Introdução a Programação. Prof. Dr. Bruno Moreno

1/ 26. Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função

1/ 23. Computação 1 - Python Aula 1 - Prática: Primeiros Passos - Função

Passo-a-passo para desenvolver um Programa usando a Linguagem Python

Computação I - Python Aula 1 - Prática: Primeiros Passos- Função

Estrutura de um Algoritmo, Variáveis, Comandos de Entrada e Saída e Expressões Aritméticas

Python 3.x Estrutura de Repetição while

Unidade 5: Introdução à Programação com Python Prof. Daniel Caetano

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM PYTHON

Ambiente de Programação, rastreamento e entrada de dados. MCG114 Programação de Computadores I. Interpretador de Comandos. Interpretador de Comandos

INFORMÁTICA PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM PYTHON

Organização de programas em Python. Vanessa Braganholo

Working 03 : Conceitos Básicos II

AULA 2: INTRODUÇÃO A PYTHON. Luís Feliphe Silva Costa

Material Didático Unificado.

Algoritmos e Programação

Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701

Conceitos Básicos de Scripts

Programação de Scripts Considerações Gerais. Adaptado do material do Prof. Mário Fiocco Júnior

Introdução a Programação

Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo

Computação 1 - Python Aula 11 - Teórica. programa principal. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 29

TCC 00308: Programação de Computadores I Organização de programas em Python

LINGUAGEM ALGORÍTMICA

Comandos de Entrada e Saída. Prof. Alberto Costa Neto Programação em Python

Linguagem e Ambiente Scratch. Introdução à Laboratório Prof.Alfredo Parteli Gomes

C A P I T U L O 2 S I N T A X E B Á S I C A - V A R I Á V E I S E C O N S T A N T E S E M P H P

Programação Básica. Estrutura de um algoritmo

Fundamentos de Lógica e Algoritmos. Aula 3.1 Introdução a Python. Prof. Dr. Bruno Moreno

Introdução ao Python. Programa Computacional

CETEC Centro Paula Souza

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015

Aula 3 Primeiros programas

Material Didático Unificado. Variáveis correspondem a nomes para endereços de memória que são gerenciados pelo Scilab.

Material Didático Unificado.

Programação Python. Nesta aula... 1 Programação. 2 Python. Operadores e Operandos Variáveis, Expressões, Instruções Funções Ciclos Comentários

Computação 1 - Python Aula 12 - Teórica: Interação com o usuário e programa principal. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 25

Programação Aplicada a Redes de Computadores. Faculdade IESGO 2º Sem 2016

Unidade 4: Introdução à Lógica de Programação - Parte II Português Estruturado - Versão Estácio Prof. Daniel Caetano

Aula de hoje. Tipos de Dados e Variáveis. Constantes literais. Dados. Variáveis. Tipagem dinâmica. SCC Introdução à Programação para Engenharias

AMBIENTE DE PROGRAMAÇÃO PYTHON II

Aula 4: Introdução à Linguagem C++

Introdução ao SciLab. SciLab O que é? Onde obter o programa:

3.1 - Funções para manipular dados de entrada e saída padrão

Working 03 : Conceitos Básicos II

Laboratório de Programação 1 Aula 04

Computação I: Linguagem de Programação Python

Unidade 4: Introdução à Lógica de Programação - Parte II

Programação de Computadores I

Unidade 2: Estruturas de Controle Parte 1 - Scanner e Estrutura IF Prof. Daniel Caetano

Python 3.x Estrutura de Repetição for Estrutura de Decisão if then else

ALGORITMOS. Professor: Diego Oliveira. Aula 06 - Tipos Primitivos de Dados

Vetores. Vanessa Braganholo

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

Primeiros programas.

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Ambiente Scilab Variáveis, expressões, comando de atribuição Entrada e Saída básica

Curso básico de JavaScript Aula 2

Ambiente de desenvolvimento

Aula 03 - Introdução ao Scilab (p2)

Gerando um programa executável a partir de um módulo Python

Algoritmo e Programação Matemática

Linguagem Java. Introdução. Rosemary Silveira Filgueiras Melo

Programação de Computadores

Obs.: para realizar estas atividades tenha certeza de que já tenha instalado no sistema operacional o Java JDK e o NetBeans.

Entrada e Saída. Aula 02

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

Lógica para programação II Seção 1 - Histórico e Introdução Primeiros Programas

Técnicas de Programação

16:20:29. Introdução à Informática com Software Livre

Informática Aplicada à Engenharia Florestal

Algoritmos e Programação

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

Introdução à Linguagem Lua Variáveis e Expressões

Portugol. Tiago Alves de Oliveira

Programação de Computadores I Estrutura de um Programa Procedimentos de Entrada e Saída PROFESSORA CINTIA CAETANO

PYTHON - Strings. Introdução à Programação SI1

Introdução a programação Comandos de repetição

MCG114 Programação de Computadores I. Strings. Strings. Strings. Strings. Strings 3/26/18. Profa. Janaína Gomide

Estácio-FIC Graduação em Redes de Computadores

MC-102 Aula 01. Instituto de Computação Unicamp

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À PROGRAMAÇÃO COM C/C++ Prof. Dr. Daniel Caetano

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE II. Prof. Dr. Daniel Caetano

Os elementos da programação

Revisão. Profa Marina Gomes

6 a Lista Complementar de Exercícios de CI208 Programação de Computadores 13/02/2014

Aula 5 Instruções Simples Cleverton Hentz

Algoritmos e Programação

Aula 1 Apresentação do Curso

Conceitos básicos. Computação eletrônica: Gurvan Huiban

Transcrição:

Aula 3: strings, scripts, variáveis Kaya Sumire Abe kaya.sumire@gmail.com Diego de Faria do Nascimento df.nascimento93@gmail.com Fabian Czajkowski fabiancza22@gmail.com 29/08/2012 Resumo Já vimos o suficiente sobre números na aula anterior. O Python é mais do que uma simples calculadora. Agora, vamos ver o que é possível fazer com textos. Nesta aula, aprenderemos a armazenar texto em variáveis, combinar textos e mostrá-los na tela. Muitos dos programas que veremos usarão textos para serem mostrados na tela para o jogador/usuário e o mesmo deverá entrar com algum texto através do teclado. Também construiremos o primeiro código fora do terminal interativo. 1 Tópicos abordados nesta aula: Ordem de execução Strings Concatenação de strings Função print Função input Comentários Nomear variáveis adequadamente Case-sensitivity Comandos para caracteres especiais 2 Strings No Python(e talvez em todas as linguagens de programação), denominamos pequenos trechos de texto como strings. Podemos armazenar valores string da mesma forma que armazenamos números. Quando digitamos strings, elas deverão estar entre aspas simples ( ) ou duplas, como o seguinte: >>> spam = hello >>> As aspas simples servem para informar o computador onde a string começa e termina e não faz parte do valor da string. Se você digitar spam no terminal, você verá o conteúdo da variável spam (no caso anterior, a string hello ). Strings podem ter (quase) quaisquer caracteres ou sinais, assim como espaços e números: 1

hello Hi there! Albert KITTENS 7 apples, 14 oranges, 3 lemons A long time ago in a galaxy far, far away... O*&#wY\%*&OCfsdYO*&gfC\%YO*&\%3yc8r2 2.1 Concatenação de strings Você pode ligar uma string a outra utilizando o operador +, o que é chamado de concatenação de strings. Observe: >>> Hello + World! HelloWorld! >>> Uma alternativa para manter as strings separadas é adicionar um espaço depois de Hello : >>> Hello + World! Hello World! >>> Strings e inteiros são diferentes tipos de dados. Todos os valores possuem um tipo definido. O tipo de valor de Hello é string, enquanto o tipo de 5 é inteiro. 3 Escrevendo o primeiro script Em Python, geralmente chamamos os programas fora do terminal interativo de scripts, apenas por conveniência. Você pode utilizar qualquer editor de texto que não adote formatação ao salvar um arquivo para escrever um script. E você pode escrever o script no terminal também, entretanto não é confortável sempre escrever o mesmo programa linha a linha, se ele for muito longo. Por exemplo, você pode usar o bloco de notas do Windows ou o gedit, no Ubuntu. Basta salvar o arquivo com a extensão.py. Se você está em dúvida ou não sabe por onde começar, esteja atento às instruções em sala de aula ou pesquise sobre isso em casa. 3.1 Hello World! Tradicionalmente, quando aprendemos uma nova linguagem, o primeiro programa feito é mostrar a saudação Hello World! 1 na tela. Criaremos o nosso próprio programa Hello World! agora. Quando você entrar com o programa, não digite os números do lado esquerdo do código. Eles servem apenas para que possamos nos localizar mais facilmente em um código e não fazem parte dele como um todo. Digite o texto a seguir no editor de sua preferência. Chamamos este texto de código fonte do programa, pois ele contém as instruções que o Python seguirá para determinar o comportamento do programa. Certifique-se que estará usando a versão Python 3, ou o programa não funcionará. Código 1: Primeiro script. 1 # Este programa me cumprimenta e pede o meu nome. 2 print( Hello world! ) 3 print( What is your name? ) 4 myname = input() 5 print( It is good to meet you, + myname) Se o programa não funcionar, leia o erro e tente consertá-lo, se for um erro de sintaxe. obtenha uma mensagem similar a: Caso 1 Olá, mundo! 2

Hello world! What is your name? Albert Traceback (most recent call last): File "C:/Python26/test1.py", line 4, in <module> myname = input() File "<string>", line 1, in <module> NameError: name Albert is not defined Quer dizer que a versão que você está utilizando, do Python, não é a correta para a execução deste programa. Verifique a compatibilidade do Python 2 em relação ao Python 3 e conserte o que for necessário, ou certifique-se que está usando a versão 3. Tarefa 3.1 Pesquise sobre as diferenças entre as versões 2 e 3 do Python e faça as alterações necessárias para o código 1 funcionar no Python 2. 4 Como o programa Hello World funciona Como este programa funciona? Cada linha em que demos entrada é uma instrução ao computador que é interpretada pelo Python, de forma que o computador entenda. Um programa de computador é como uma receita de bolo: primeiro passo, segundo passo, e assim por diante, até chegar ao fim. Cada instrução é seguida em sequência, do início ao fim do programa. O passo-a-passo de um programa é chamado de ordem de execução ou apenas execução, para simplificar. Agora vamos analisar minuciosamente este programa. 4.1 Comentários 1 # Este programa me cumprimenta e pede o meu nome. Esta linha é um comentário. Qualquer texto seguido por um sinal de sustenido (#) é um comentário. Comentários não são para o computador, mas para o programador; o computador os ignora. Eles são utilizados para lembrar ao programador ou informá-lo sobre o que o código faz. 4.2 Funções Uma função é como se fosse um mini-programa dentro do seu programa, contém linhas de código que são executadas do início ao fim. O Python fornece algumas funções prontas para facilitar a prática da programação. A vantagem disso é que não precisamos saber dos passos que a função toma para executar determinada ação, apenas como utilizá-la para obter um resultado. Uma chamada de função é um trecho de código que informa ao programa para executar o código dentro da função. Por exemplo, o seu programa pode chamar a função print() sempre que você quiser mostrar algum texto na tela. 4.2.1 A função print() 2 print( Hello world! ) 3 print( What is your name? ) Estas linhas chamam a função print(), com a string a ser impressa dentro dos parênteses. Adicionamos parênteses no fim dos nomes das funções para deixar claro que estamos nos referindo a funções e não a variáveis que possam ter o mesmo nome de uma função. Analogamente, utilizamos aspas para nos referirmos às strings: por exemplo, ao utilizarmos 42 nos referimos à string 42 e não ao inteiro 42. 3

4.2.2 Comandos para caracteres especiais Eventualmente, gostaríamos de imprimir alguns caracteres que são vistos na programação como caracteres especiais, tais como barras, aspas, apóstrofos, etc. Como eles não são caracteres que possam ser impressos normalmente com a função print(), então utilizamos alguns comandos simples para utilizá-los em modo texto 2. Outros recursos também podem ser utilizados na função print() para pular linhas ou imprimir tabulações. Observe a tabela 1. Tabela 1: Comandos para caracteres especiais. Comando O que é impresso \\ Contra-barra (\) \ Aspas simples ( ) \" Aspas duplas (") \n Nova linha \t Tabulação 4.2.3 Aspas duplas e aspas simples Strings não necessitam vir sempre entre aspas simples, no Python. É possível colocar texto entre aspas duplas também, obtendo-se o mesmo efeito. >>> print( Hello world ) Hello world >>> print("hello world") Hello world Entretanto, não se deve misturar aspas simples e duplas. >>> print( Hello world") SyntaxError: EOL while scanning single-quoted string Lembre-se que só é necessário utilizar o comando \ quando uma string é envolvida por aspas simples. O mesmo serve para as aspas duplas. Observe o exemplo. >>> print( I asked to borrow Abe\ s car for a week. He said, "Sure." ) I asked to borrow Abe s car for a week. He said, "Sure." >>> print("he said, \"I can t believe you let him borrow your car.\"") He said, "I can t believe you let him borrow your car." 4.2.4 A função input() 4 myname = input() Esta linha possui uma sentença de atribuição à uma variável (myname) e uma chamada de função (input()). Quando a função input() é chamada, o programa espera por uma entrada (input) do usuário com texto. A string que o usuário entra (neste caso, seu nome) torna-se o valor de saída (output). Como expressões, chamadas de função resultam em um valor único. Este resultado é chamado de valor de retorno. Neste caso, o valor de retorno da função input() é a string dada como entrada. Apesar do seu nome, a função input() não necessita de nenhuma entrada, ou, como chamamos em programação, argumento, que são dados dentro dos parênteses. Na última linha do programa, temos, novamente, uma função print(). Desta vez, utilizamos o operador + para concatenar a string It is good to meet you e a string armazenada na variável myname, que contém o nome que o usuário deu como entrada ao programa. Esta é a forma com que o programa nos cumprimenta pelo nome. 2 Em inglês, chamados de escape characters. 4

4.3 Finalizando o programa Uma vez que o programa executa a última linha, ele para. Neste ponto, ele termina o programa e todas as variáveis são esquecidas pelo computador, inclusive a string que armazenamos na variável myname. Se você tentar executar o programa novamente, com um nome diferente, o novo nome será utilizado. Hello world! What is your name? Carolyn It is good to meet you, Carolyn Lembre-se que o computador executa exatamente o que for programado para fazer. Computadores são burros. Este programa não se importa com o que você digitar no lugar do seu nome. Você pode digitar qualquer coisa e o computador o tratará da mesma forma: Hello world! What is your name? poop It is good to meet you, poop 5 Nome de variáveis O computador não se importa com o nome que você dá para as suas variáveis. Entretanto, o recomendado é que as variáveis possuam nomes que facilitem o seu entendimento. A identificação dos nomes de variáveis (assim como qualquer outra coisa no Python) diferenciam maiúsculas de minúsculas (case-sensitive). Isso significa que uma variável com o mesmo nome, mas com a escrita diferente, entre maiúsculas e minúsculas, não são consideradas a mesma coisa. Assim, spam, SPAM e spam são consideradas diferentes variáveis, cada uma podendo carregar um valor diferente. Contudo, não é uma boa ideia utilizar variáveis com o mesmo nome, para evitar confusões. Por exemplo, uma simples troca de variável pode fazer com que o resultado não seja o esperado, embora o programa execute corretamente. Este erro é frequentemente chamado de bug e é comum ocorrerem acidentes deste tipo enquanto construímos programas. Por isso, é importante que os nomes das variáveis que você escolher façam sentido. É útil usar letras maiúsculas em variáveis quando é utilizado mais de uma palavra em seu nome. Por exemplo, se você utilizar nomedavariavel ao invés de nomedavariavel pode tornar o código mais fácil de ser lido. Esta é uma convenção (ou seja, uma padronização opcional para se trabalhar) da programação em Python e em outras linguagens também. 6 Resumo Agora que você aprendeu a lidar com texto, podemos começar a construir programas com os quais podemos interagir. Isto foi importante porque é através do texto que o usuário e o computador se comunicarão. Strings são um diferente tipo de dado que utilizaremos em nossos programas. Podemos utilizar o operador + para concatenar strings. No próximo capítulo, vamos aprender mais sobre como lidar com variáveis para que o programa utilize os dados e números dados como entrada em um programa. Uma vez que tenhamos aprendido como utilizar texto, números e variáveis, estaremos prontos para criar jogos. 7 Exercícios Para todos os exercícios a seguir, envie o código-fonte e o resultado de uma execução de cada um. Os exercícios poderão ser entregues em papel, na próxima aula, ou enviados por e-mail. 1. Faça um programa (script) que peça dois números ao usuário e imprima a soma. 5

2. Faça um programa que peça um lado do quadrado, calcule a área, em seguida mostre o dobro desta área para o usuário. 3. Faça um programa que peça a temperatura em graus Fahrenheit, transforme e mostre a temperatura em graus Celsius. (C = (5 (F 32)/9)). 4. Faça um programa que peça 2 números inteiros e um número real. Calcule e mostre: (a) O produto do dobro do primeiro com metade do segundo. (b) A soma do triplo do primeiro com o terceiro. (c) O terceiro elevado ao cubo. 5. Faça um programa que peça o tamanho de um arquivo para download (em MB) e a velocidade de um link de Internet (em Mbps), calcule e informe o tempo aproximado de download do arquivo usando este link (em minutos). Obs. 1 MB (megabyte) = 8 Mb(megabit). 6