1 / 34

Programação Avançada Conceitos básicos

Programação Avançada Conceitos básicos. Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012. Operações básicas. + - / * ** ou pow (a,b) % = ==, !=, <, >, <=, >= or , and , not. Valor dos operadores. 10/3 10.0/3 10/3.0 10%3 10.0%3

gilon
Download Presentation

Programação Avançada Conceitos básicos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programação AvançadaConceitos básicos Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012

  2. Operações básicas • + • - • / • * • ** ou pow(a,b) • % • = • ==, !=, <, >, <=, >= • or, and, not

  3. Valor dos operadores • 10/3 • 10.0/3 • 10/3.0 • 10%3 • 10.0%3 • A = ‘casa’ e B = ‘teste’. A+B=?

  4. Variáveis • São nomes dados a áreas de memória • Nomes compostos de algarismos,letras ou _ • O primeiro caractere não pode ser um algarismo • Palavras reservadas (if, while, etc) são proibidas • Funcionalidades: • Guardar valores intermediários • Criar estruturas de dados • Uma variável é modificada usando o comando de atribuição: • Var = expressão • var1,var2,...,varN = expr1,expr2,...,exprN

  5. Exercício • Qual o resultado: • a=1 b=2 a, b = 2*a,b • a=1 b=2 a,b=b,a

  6. Tipos de variáveis O tipo da variável não é explicitamente definido em Python! Exemplo: Crie uma string contendo a palavra ‘teste’

  7. Comportamento de variáveis • Variáveis • Criadas dinamicamente • Destruídas automaticamente quando não mais necessárias • Tipo da variável muda conforme valor atribuído • A = ‘Casa’ #A é uma string • A+1 #Gera erro • A = 1 #Agora A passou a ser um inteiro • A+1 #Resulta em 2 Comentários são colocados com o uso do #

  8. Tipos de variáveis • Tipos primitivos • Embutidos na linguagem • Tipos • Simples • int • Números inteiros de precisão fixa (1 palavra=32 bits) • Exemplos: 1 , -2 , 25 • Representação em hexadecimal: • a=0xab • Em decimal, a=171 • Representação em octal: • a=030 • Em decimal, a = 24

  9. Tipos de variáveis • long • Números inteiros de precisão arbitrária (Tantas palavras quanto for necessário) • Exemplos: 1L , 10000L , -9999999L • float • Números racionais de precisão variável (2 palavras) • Exemplos: 1.043, 123e14, 2e5 • Uso de ‘e’ ou ‘E’ representando potência de 10 • 2e2 equivale a 200

  10. Tipos de variáveis • complex • Números complexos • Exemplos: 1+1j , 20j , 1000+100J • Pode-se usar j ou J, mas sempre com um número na frente • A=j  erro • A=1j  Número complexo

  11. Tipos de variáveis • String • Sequência de caracteres • Exemplos: ‘casa’, “casa” • Pode-se usar ‘’ ou “” indistintamente • A representação de um caractere ou de uma string é feita de forma indistinta • Operações • +  Concatenação • *  Repetição • “a”*3 = “aaa”

  12. Tipos de variáveis • Caracteres especiais que não são impressos são representados com a barra invertida (\) • \n = newline • \r = carriagereturn • \t = tab • \b = backspace • \\ = \ Qual o resultado das seguintes operações? Por quê? >>> “ab\rd” >>> print “ab\rd” >>> print “abc\td” >>> print “abc\nd” >>> print “abc\\nd” >>> print “ab\bc”

  13. Tipos de variáveis • Strings podem ser escritas em várias linhas • A = “A minha frase de exemplo \ pode ser muito longa, \ de tal forma que eu prefira \ escrevê-la em várias linhas.” • A = ‘‘‘ A minha frase de exemplo pode ser muito longa, de tal forma que eu prefira escrevê-la em várias linhas.’’’ • A = “““A minha frase de exemplo pode ser muito longa, de tal forma que eu prefira escrevê-la em várias linhas.”””

  14. Tipos de variáveis • Índices de strings • Primeiro caractere com índice 0 • Último caractere com índice -1 • Exemplo: • A=‘teste’ • A[0]=‘t’ • A[4]=‘e’ • A[-1]=‘e’ • Trechos de strings • Representação: A[início:fim] • Omitir início ou fim significa trecho a partir do inicio ou até o fim Incluso Excluso

  15. Tipos de variáveis • Exemplos >>> a = 'abcde‘ >>> a[0:2] 'ab' >>> a [2:] 'cde' >>> a[:] 'abcde' >>> a[-1:] 'e' >>> a[:-1] 'abcd'

  16. Tipos de variáveis • Tipos primitivos • Simples • Compostos • Listas • Dicionários • Tuplas • Conjuntos • Definidos pelo usuário • Classes Veremos tipos compostos e definidos pelo usuário mais a frente.

  17. Expressões booleanas • Usadas como condições • If e laços (for e while) • Resultam True ou False • True e False são palavras especiais de Python (lembrar de usar letra maiúscula) • True = qualquer valor não nulo • False = 0 • Avaliação feita da esquerda para a direita • Resultado retornado tão logo seja possível

  18. Expressões booleanas • O operador or retorna o primeiro operando se esse for verdadeiro • Caso contrário retorna o segundo • O operador and retorna o primeiro operando se for falso • Caso contrário retorna o segundo • Ordem de avaliação • Operadores relacionais • not • and • or (último a ser avaliado)

  19. Expressões booleanas • Exercício: Qual o resultado? • 1==1 • 1==2 • 1==1 or 1==2 • 1==1 and 1==2 • 1<2 and2<3 • not1<2 • not 1<2 or2<3 • not (1<2 or 2<3) • ‘alo’ and1 • “alo” or 1

  20. Funções embutidas • Funções disponíveis para o programador por padrão • Exemplos • abs(x) – Valor absoluto de x • int(x) – Converte x parainteiro • long(x) - Convert x parainteirolongo • float(x) – Converte x parapontoflutuante • complex(re,im) – Crianúmerocomplexo com parte real re e parte imagináriaim • round(x) - Arredonda o valor de x

  21. Módulos • Módulo • Arquivo definindo: • Funções • Variáveis • Classes • Biblioteca padrão é dividida em módulos • Exemplo • Módulo math Funções matemáticas como seno e cosseno, variáveis como o pi, etc. • Nome do módulo = nome do arquivo sem o ‘.py’ • Qualquer script que você crie pode ser visto como um módulo

  22. Módulos • Utilização de módulos • Comando import • Uso: • importmodulo • from modulo importnome,...,nome • from modulo import*

  23. Exemplo • Crie o script fibo.py com o seguintecódigo # Fibonacci numbers module def fib(n): # write Fibonacci series up to n a, b = 0, 1 while b < n: print b, a, b = b, a+b def fib2(n): # return Fibonacci series up to n result = [] a, b = 0, 1 while b < n: result.append(b) a, b = b, a+b return result

  24. Exemplo • Entre no interpretador e digite: >>> import fibo • >>> fibo.fib(1000) • >>> fibo.fib2(100) • >>> fibo.__name__

  25. Importando módulos • importmodulo • Importa o módulo completo. • Exemplo importmath math.cos(0.67) • frommoduloimport * • Importa o módulo completo • Exemplo frommathimport * cos(0.67) Usa o nome do módulo na frente da função Usa a função diretamente

  26. Importando módulos • frommoduloimport função1, função2 • Importa apenas funções especificadas • Exemplo frommathimportcos cos(0.67) Usa a função diretamente

  27. Criando o seu próprio código • Voltando ao exemplo do Fibonacci (fibo.py) # Fibonacci numbers module def fib(n): # write Fibonacci series up to n a, b = 0, 1 while b < n: print b, a, b = b, a+b Comentário Definição de uma função Atribuição de valores a variáveis Laço com expressão booleana Bloco a ser repetido Indentação

  28. Criando o seu próprio código • Função principal • Tudo o que está fora das definições de função • Contudo, é mais formal usar o seguinte: if __name__ == "__main__": • Permite criar um script e um módulo importável ao mesmo tempo • Organiza melhor o código

  29. Criando o seu próprio código • Comando condicional ‘if’ • Uso • ifexpressao: • comandos • ifexpressao: • comandos1 • else: • comandos2 • ifexpressao1: • comandos1 • elifexpressao2: • comandos2 • else: • comandos(N) Tipo 1: Se, então faça Tipo 2: Se, então faça. Senão, faça. elif pode ser repetido várias vezes Tipo 3: Se, então faça. Senão, se, então faça. Senão, faça. elif elseif

  30. Criando o seu próprio código • Exemplo: • a = input("Entre com um numero:") • if a < 0: • print a," é negativo“ • elif (a==0): • print a, “ é zero” • else • print a, “ é negativo” • print "Obrigado!"

  31. Criando o seu próprio código • Laço while • Uso • while (expressão): • Executa enquanto expressão for True • Atenção: Pode criar loops infinitos!! • Ex: • A=1 • B=1 • while (A==1): • B= B+1 • print B

  32. Criando o seu próprio código • Função print • Escrever texto na tela sem pular de linha • Uso • print “texto1”, “texto2”, variável1, “texto3” • Resultado: texto1 texto2 1 texto3 • Se o comando terminar com vírgula, o próximo print continua da mesma linha • Ex: • print “texto1”, print “texto2” • Resultado: texto1 texto2

  33. Criando o seu próprio código • Função input • Recebe dados da linha de comando • Uso: input(“Texto qq”) • Exemplo: A=input(“Digite a sua idade”) print A • Observação: strings só podem ser recebidas com o input se forem colocadas entre ‘’ ou “” • Função raw_input • Interpreta qualquer entrada como string • Não precisa de ‘’ ou “” Espera até o usuário digitar alguma coisa

  34. Criando o seu próprio código • Exercício • Faça um programa que peça do usuário um número e escreva na tela se ele é primo ou não. • Transforme o seu programa em uma função e crie um módulo. • Importe o seu módulo e mostre o uso da sua função.

More Related