Funções. Prof. Alberto Costa Neto Programação em Python

Documentos relacionados
Dicionários. Prof. Alberto Costa Neto Programação em Python

Listas. Prof. Alberto Costa Neto Programação em Python

Variáveis, Expressões e Comandos. Prof. Alberto Costa Neto Programação em Python

A Linguagem Python: Uma visão geral. Prof. Alberto Costa Neto Programação em Python

Arquivos. Prof. Alberto Costa Neto Programação em Python

Motivação Programar? Prof. Alberto Costa Neto Programação em Python

1 Expressões, valores e tipos 1. 2 Variáveis e atribuições 5. cálculo de expressões segue a estrutura de parênteses e as prioridades dos operadores

Computação 1 - Python Aula 2 - Teórica. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 39

Computação I - Python

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

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

Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28

Algoritmos e estrutura de dados

Computação 1 - Python 1/ 41

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

Fundamentos de Lógica e Algoritmos. Aula 3.2 IDLE, Variáveis e Tipos. Prof. Dr. Bruno Moreno

Programação I Aula 3 Primeiros programas

Aula de hoje. Expressões. Expressões. Expressões. Exemplos. Programa em Python. SCC Introdução à Programação para Engenharias

Introdução à Programação Aula 3 Primeiros programas

Organização de programas em Python. Vanessa Braganholo

Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - Dicionário. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18

Computação I - Python Aula 1 - Teórica: Manipulação de Strings, Tuplas e Listas

Programação de Computadores

Computação 1 - Python Aula 6 - Teórica: Listas 1/ 28

Computação 1 - Python Aula 4 - Teórica Variáveis e Atribuição, Strings. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 30

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

Computação I - Python Aula 4 - Teórica: Variáveis e Atribuição, Strings

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

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

Organização de programas em Python. Vanessa Braganholo

Computação 1 - Python Aula 4 - Teórica: Variáveis e Atribuição, Strings 1/ 26

Interação com o usuário

Luciano Ramalho setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python

Interação com o usuário

Python: Comandos Básicos. Claudio Esperança

Python: Exceções, Iteradores e Geradores. Claudio Esperança

Listas e Tuplas. Vanessa Braganholo

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

Linguagem C Princípios Básicos (parte 1)

Curso básico de Python para estudantes de Física

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

Processamento da Informação Teoria Funções

Arquivos O QUE É, COMO LER E MANIPULAR

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

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA. DIM0320 Algoritmos e Programação de Computadores

Algoritmos e programação

Introdução à Programação Aula 09. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

A Linguagem Python: Uma visão geral. Prof. Alberto Costa Neto Programação em Python

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

Fundamentos de Programação em Python

Algoritmos I Aula 13 Linguagem de Programação Java

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

Introdução à Programação

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

Análise de Programação

Programação de Computadores II

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

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

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

SCC0124 Introdução à Programação para Engenharias

Transcrição:

Funções Prof. Alberto Costa Neto Programação em Python

Passos armazenados (e reusados) def imprimir(): Programa: imprimir() print 'Zip' imprimir() print 'Hello' print 'Fun' def imprimir(): print 'Hello' print 'Fun' imprimir() print 'Zip' imprimir() Saída: Hello Fun Zip Hello Fun Chamamos estes pedaços de código fonte reusáveis de funções

Funções em Python Há 2 tipos de funções em Python. Funções Built-in que são providas como parte da linguagem Python - raw_input(), type(), float(), int()... > Funções que nós definimos e então as utilizamos Tratamos os nomes das funções built-in como novas palavras reservadas (ou seja, evitamos usá-los como nomes de variáveis)

Definição de Funções Em Python uma função é um código fonte reusável que recebe argumento(s) como entrada, computa algo, e então retorna um resultado ou resultados Definimos uma função usando a palavra reservada def Chamamos/Invocamos uma função ao usar o nome da função, parênteses, e argumentos em uma expressão

Argumento big = max('hello world') Atribuição 'w' Resultado >>> big = max('hello world') >>> print big w >>> tiny = min('hello world') >>> print tiny >>>

Função max >>> big = max('hello world') >>> print big w Uma função é um código fonte armazenado que podemos usar. Uma função recebe uma entrada e produz uma saída. 'Hello world' (uma string) max() 'w' (uma string) Guido escreveu este código

Função max >>> big = max('hello world') >>> print big w Uma função é um código fonte armazenado que podemos usar. Uma função recebe uma entrada e produz uma saída. 'Hello world' (uma string) def max(inp): blah blah for x in y: blah blah Guido escreveu este código 'w' (uma string)

Funções de Conversão de Tipos Quando você inclui um inteiro e um ponto flutuante em uma expressão, o inteiro é implicitamente convertido para um float Você pode controlar isto com as funções built-in int() e float() >>> print float(99) / 100 0.99 >>> i = 42 >>> type(i) <type 'int'> >>> f = float(i) >>> print f 42.0 >>> type(f) <type 'float'> >>> print 1 + 2 * float(3) / 4-5 -2.5 >>>

Conversões de String Você também pode usar int() e float() para converter entre strings e inteiros Obterá um erro se a string não contiver caracteres numéricos >>> sval = '123' >>> type(sval) <type 'str'> >>> print sval + 1 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: cannot concatenate 'str' and 'int' >>> ival = int(sval) >>> type(ival) <type 'int'> >>> print ival + 1 124 >>> nsv = 'hello bob' >>> niv = int(nsv) Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: invalid literal for int()

Construindo nossas próprias Funções Nós criamos uma nova função usando a palavra chave def seguida por parâmetros (opcionalmente) dentro de parênteses O corpo da função deve ser indentado Isto define a função, mas não executa o corpo da função def imprimir_letra(): print 'Eu sou um lenhador, e estou bem.' print 'Eu durmo a noite toda e trabalho o dia todo.'

imprimir_letra(): print 'Eu sou um lenhador, e estou bem.' print 'Eu durmo a noite toda e trabalho o dia todo.' x = 5 print 'Ola' def imprimir_letra(): print 'Eu sou um lenhador, e estou bem.' print 'Eu durmo a noite toda e trabalho o dia todo.' print 'Oi' x = x + 2 print x Ola Oi 7

Definições e Usos Uma vez que tenhamos definido uma função, podemos chamar (ou invocar) a função quantas vezes quisermos Este é o padrão armazenar e reusar

x = 5 print 'Ola' def imprimir_letra(): print 'Eu sou um lenhador, e estou bem.' print 'Eu durmo a noite toda e trabalho o dia todo.' print 'Oi' imprimir_letra() x = x + 2 print x Ola Oi Eu sou um lenhador, e estou bem. Eu durmo a noite toda e trabalho o dia todo. 7

Argumentos Um argumento é um valor que passamos para dentro de uma função (como sua entrada) quando chamamos a função Usamos argumentos para fazer com que a função execute tipos diferentes de trabalho quando a chamamos em situações diferentes Os argumentos são colocados, entre parênteses e separados por vírgula, depois do nome da função big = max('hello world') Argumento

Parâmetros Um parâmetro é uma variável que usamos dentro da definição da função. É o mecanismo que permite acessar os argumentos de uma invocação específica de uma função. >>> def cumprimentar(ling):... if ling == 'br':... print 'Ola'... elif ling == 'fr':... print 'Bonjour'... else:... print 'Hello'... >>> cumprimentar('en') Hello >>> cumprimentar('es') Ola >>> cumprimentar('fr') Bonjour >>>

Valor de Retorno Geralmente, uma função recebe argumentos, computa algo, e retorna um valor a ser usado como o valor da função na expressão que a chamou. A palavra chave return é usada para isso. def cumprimentar(): return "Hello" print cumprimentar(), "Glenn" print cumprimentar(), "Sally" Hello Glenn Hello Sally

Valor de Retorno Uma função útil é uma que produz um resultado (ou valor de retorno) O comando return encerra a execução da função e devolve o resultado da função >>> def cumprimentar(ling):... if ling == 'br':... return 'Ola'... elif ling == 'fr':... return 'Bonjour'... else:... return 'Hello'... >>> print cumprimentar('en'),'glenn' Hello Glenn >>> print cumprimentar('br'),'sally' Ola Sally >>> print cumprimentar('fr'),'michael' Bonjour Michael >>>

Argumentos, Parâmetros e Resultado >>> big = max('hello world') >>> print big w Argumento 'Hello world' def max(inp): blah blah for x in y: blah blah return 'w' Parâmetro 'w' Resultado

Múltiplos Parâmetros / Argumentos Podemos definir mais de um parâmetro na definição da função Ao chamarmos a função, simplesmente passamos mais argumentos O número e a ordem dos argumentos deve casar com os parâmetros def somar(a, b): somado = a + b return somado x = somar(3, 5) print x 8

Funções Void Quando uma função não retorna um valor, a chamamos de função void

Usar funções é muito bom Organiza o código fonte em parágrafos - capture um raciocínio completo e escolha um bom nome para a função DRY - Don t repeat yourself Faça apenas uma vez e reuse Se algo ficou muito grande e complexo, quebre em pedaços lógicos e coloque estes pedaços em funções Crie uma biblioteca (library) de coisas comuns que você faz repetidamente talvez compartilhar com seus amigos...

Acknowledgements / Contributions Agradecimentos / Contribuições These slides are Copyright 2010- Charles R. Severance ( www.dr-chuck.com) of the University of Michigan School of Information and open.umich.edu and made available under a Creative Commons Attribution 4.0 License. Please maintain this last slide in all copies of the document to comply with the attribution requirements of the license. If you make a change, feel free to add your name and organization to the list of contributors on this page as you republish the materials.... Initial Development: Charles Severance, University of Michigan School of Information These slides were translated and adapted by Alberto Costa Neto (albertocn.sytes.net) of the Federal University of Sergipe