Guia de referência Python - Parte 1

Para você que quer aprender rapidamente python ou já sabia, mas esqueceu, segue abaixo um guia de referência rápida.

Executar um arquivo ou comando Python

  • Interativo (Shell Python): python
  • Linha de comando: python <nome_do_arquivo>.py
  • Shell Linux: Coloque: #!/usr/bin/python no início do arquivo, transforme ele em executável e execute-o.

Tipos de dados, atribuição e operações

  • Atribuição: <nome> = valor
  • Operadores: "+" (positivo, soma ou concatenação), "-" (negativo ou subtração), "*" (multiplicação), "**" (potência), "/" (divisão), "%" (módulo - resto da divisão), "<" (menor que), ">" (maior que), "<=" (menor ou igual a), ">=" (maior ou igual a), "==" (igual a), "!=" (diferente), "<>" (diferente - obsoleto)
  • Numérico:
    • x = 10
    • tau = 6.28
  • String (aspas simples e dupla):
    • nome = "Thiago Galbiatti Vespa"
    • trava = 'Ninho de mafagafo'
  • Acesso à partes da String: <var_string>[<posicao>]
    • nome[3]
    • trava[0]
  • Concatenação: <var_string> + <outra_var_string>
    • nome + " está em um " + trava
  • Substring: <var_string>[<inicio>:<fim>]
    • nome[0:6]
  • Lista: <var_lista> = [<valor1>, <valor2>, <valor3>]
    • comidas = ['pizza', 'macarrão', 'sushi', 'nachos']
    • quantidade = [8, 200.5, 8, 10]
    • pedido = [comidas, quantidade]
    • valores = [4, 5, 6, [9, 8, 7]]
  • Concatenar Listas: <lista1> + <lista2>
    • comidas + ['tacaca', 'sashimi']
  • Tuplas (listas não dinâmicas): <tupla> = (<valor1>, <valor2>, <valor3>)
    • semana = ('domingo', 'segunda', 'terça', 'quarta', 'quinta', 'sexta', 'sábado')
  • Dicionários (array associativo, map): <dicionario> = { <chave1> : <valor1>, <chave2> : <valor2>, <chave3> : <valor3> }
    • idades = { "João" : 22, "Maria" : 45, "Ninguém" : "Idade não definida" }
  • Acesso à dados definido nos dicionários: <dicionario>[<chave>]
    • idades["Maria"]

Impressão de dados

  • print <variavel>
    • print "algo"
    • print variavel

Fluxo

  • Importante: Utilizar <tab> ou <espaço> para identação e delimitador de bloco (como por exemplo, em outras linguagens: begin ... end, { ... }. No pythons é utilizada a identação}. Se não tiver identação, você obterá o seguinte erro: IndentationError: expected an indented block. A convenção é utilizar 4 <espaços>, mas eu uso <tab> :).
  • Loop while: while <condicao>:
    • i = 0
      while i < 10:
      <tab>print "Estou imprimindo 10 vezes"
      <tab>i = i + 1
  • Condicional if (o else e o elif são opcionais): if <condição1>: <comandos> elif <condicao2>: <comandos> else: <comandos>
    • if idade > 18:
      <tab>print "Maior de idade"
      elif idade > 0:
      <tab>print "Menor de idade"
      else:
      <tab>print "Idade invalida"
  • Loop for: for <contador> in <lista>: <comandos>
    • for comida in comidas:
      <tab>print comida
    • for nome in idades:
      <tab>print nome
      <tab>print idades[nome]
  • Função range para gerar uma sequência de números: range(<inicio>, <fim>) ou range(<inicio>, <fim>, <incremento>)
    • for par in range(0, 10, 2):
      <tab>print par
    • valor = range(0, 20)
      for v in valor:
      <tab>print v

Continua... 🙂

Sobre: Thiago Galbiatti Vespa

Thiago Galbiatti Vespa é mestre em Ciências da Computação e Matemática Computacional pela USP e bacharel em Ciências da Computação pela UNESP. Coordenador de projetos do JavaNoroeste, membro do JCP (Java Community Process), consultor Oracle, arquiteto de software de empresas de médio e grande porte, palestrante de vários eventos e colaborador de projetos open source. Possui as certificações: Oracle Certified Master, Java EE 5 Enterprise Architect – Step 1, 2 and 3; Oracle WebCenter Portal 11g Certified Implementation Specialist; Oracle Service Oriented Architecture Infrastructure Implementation Certified Expert; Oracle Certified Professional, Java EE 5 Web Services Developer; Oracle Certified Expert, NetBeans Integrated Development Environment 6.1 Programmer; Oracle Certified Professional, Java Programmer; Oracle Certified Associate, Java SE 5/SE 6