Guia de Iniciantes para Python

7 min de leitura
Patrocinado
Imagem de: Guia de Iniciantes para Python
Avatar do autor

Equipe TecMundo

@tec_mundo

Nós apresentaremos os conceitos básicos para começar nessa linguagem e mostrar como você pode usar Python para tudo: desde cálculos algébricos até apresentação gráfica de dados inseridos.

Análise de computação científica

Computação científica envolve usar computadores para solucionar problemas científicos. Ela é usada para solucionar equações, especificamente. Desde equações não lineares (encontrar raízes) e sistemas de álgebra linear numérica (álgebra linear numérica) até solução de sistemas de equações diferenciais parciais não lineares (física computacional).

Historicamente, algoritmos numéricos para solucionar esses problemas foram programados em linguagens como C/C++ e Fortran — e ainda são. Então, onde Python se encaixa? Python é ótimo para rápida implementação e testes de novos (e velhos) algoritmos, bem como para combinar códigos de física — algo normalmente feito nos melhores laboratórios dos Estados Unidos. Python é fácil, divertido de estudar e bastante poderoso. Então, o que você está esperando? Vamos começar!

Baixe Python

Python está disponível em todos os computadores que rodam sistemas operacionais Linux ou MacOS. Você pode até mesmo utilizar Python no iPad pelo app Pythonista. No Windows, por sua vez, você também pode instalar a linguagem pelo site Python.org. Entretanto, se você for utilizá-lo para computação científica — ou até mesmo se não for — recomendo baixar e instalar o Anaconda. O Anaconda fornece a instalação completa de Python e de vários outros pacotes (ou módulos, como me refiro a eles) para computação científica. Ele também oferece acesso fácil para o ambiente de desenvolvimento integrado Spyder.

Python pronto para o serviço

Assim que instalar o Anaconda, você deve clicar no ícone para o Navegador Anaconda e começar a se divertir. Na janela do canto inferior direito, você encontrará um prompt de comando; clique nele e comece a digitar seus comandos em Python. Se você preferir um meio mais tradicional para aprender uma nova linguagem de programação, digite print(“Hello World”), e depois aperte Return.

Você pode usar o prompt de comando para inserir um ou múltiplos comandos para testar seus snippets rapidamente ou gerar saídas para seu trabalho. Quando for utilizar mais de uma única linha de código, a melhor alternativa é gerar e salvar um arquivo com o programa separadamente (falaremos disso depois).

A outra opção, pelo menos no Linux e MacOS, é abrir uma janela do terminal e digitar Python no prompt de comando. Fazer isso abrirá o prompt de comando Python e você poderá digitar comandos deste ponto. Se você digitar idle no terminal, você terá uma nova janela com o editor Idle Python — que é o ideal para digitar scripts em Python e rodá-los com o F5.

O que há em um nome?

Agora que você tem Python instalado e sabe como começar a digitar comandos, pode partir para a matemática e a ciência. Programação para resolução de equações envolve o uso de variáveis e a manipulação dos números que as representam. Por exemplo, defina uma variável em Python digitando o seguinte comando no prompt:

Parabéns! Você acaba de criar duas variáveis simultaneamente com nomes x0 e x1, além de atribuir 1.5 e 2.0 como valores para elas. Para checar, apenas digite:

Ou você pode chamar a função print:

Você não precisa declarar essas variáveis como reais (números em float) ou inteiros, porque Python é uma linguagem mais intuitiva. O tipo da variável é detectado em tempo real, baseando-se nos valores atribuídos.

Computadores e álgebra

Há duas variáveis designadas para dois números, então você pode imediatamente realizar contas simples de álgebra, como adicionar, subtrair, multiplicar ou dividir, tudo a seu gosto. Esses são os pontos fortes de um computador. Para ver como essas operações funcionam, digite o comando a seguir no prompt:

>>> yp = x0 + x1

>>> ym = x1 - x0

>>> yt = x0*x1

>>> yd = x1/x0

>>> print(yp,ym,yt,yd)

Agora você está oficialmente operando cálculos científicos.

Computadores e lógica

Se a única coisa que computadores fossem capazes de fazer fossem cálculos algébricos, seu impacto na computação científica seria limitado. O fato de computadores também serem capazes de entender lógica matemática é o que torna possível a criação de programas mais complexos. A essa altura, você já deve estar familiarizado com o uso de expressões como: se for verdade, então (em inglês, if this, then that). Isso não é exatamente o que estamos falando, mas é bastante semelhante. Estamos nos referindo ao controle de fluxo de cada programa, ou à habilidade de executar uma linha ou um bloco de código (grupo de linhas) apenas em certas condições e outras linhas e blocos apenas sob outras condições. Para ver o que isso realmente significa, digite o seguinte exemplo:

Esse código é um exemplo de um bloco if, onde elif é apenas um termo simplificado de else if — e esse else é executado se as duas (ou mais) condições necessárias não forem correspondidas. 

O poder por trás de toda ciência computacional está relacionado à habilidade de executar o mesmo bloco de código várias vezes com diferentes dados. É aí que o loop pode ser usado. Considere o seguinte snippet, que adota a função range já inclusa em Python para gerar uma lista de 10 inteiros começando por 0:

Esse código executa o cálculo de x1 = x0 + i dez vezes, começando no i = 0 e terminando com i = 9.

Qual é sua função?

Funções iniciam o importante processo de programação, já que são capazes de reduzir uma enorme quantidade de linhas de uma tarefa em uma pequena seção de subtasks (ou subtarefas), também conhecidas como functions (funções). Várias funções e libraries externas estão inclusas em Python — e explicarei posteriormente. Você também pode construir suas próprias funções. Você pode criá-las utilizando def, como mostrado abaixo, para a função batizada de f — que recebe a variável x pelo input e retorna o valor após a aplicação da expressão algébrica:

Para criar uma função capaz de apresentar integrais da função acima, digite:

Salve isso

Até agora, você testou todos os seus comandos em Python no prompt de comando — que é o bastante para pequenos códigos descartáveis. Contudo, se você está trabalhando em um projeto maior ou deseja salvar o progresso para depois, recomendo criar um novo arquivo Python, ou script. Você pode fazer isso pela janela do terminal (Linux e MacOS) ao usar o seu editor favorito. Por exemplo, usando Vi, você pode rapidamente digitar vi newton.py para criar um arquivo de texto em branco com nome newton com a extensão .py. Isso permite que tanto o PC quanto os usuários saibam que se trata de um arquivo em Python. Depois disso, com o arquivo aberto, você pode começar a digitar os comandos em Python.

Observação: Python usa espaços em branco para determinar blocos. O padrão é usar 4 espaços para indentar um novo bloco, assim como as linhas de código que compõem uma função ou um bloco if - then.

Outro importante aspecto da programação são os comentários — linhas responsáveis por descrever para o leitor o que o script está realizando. Comentários de linha única podem começar pelo símbolo #; para criar observações com várias linhas, comece o comentário com ‘\#’ e finalize-o com ‘#\’. Depois de entrar com o código, salve-o e saia do editor. Depois rode o código pela janela do terminal utilizando o código python newton.py.

Em ciência computacional, geralmente é uma boa ideia solucionar um problema fragmentando-o em pequenos problemas, ou subtasks. Em Python, essas subtarefas são conhecidas como modules. Módulos são arquivos adicionais (com extensão .py) que contêm definições e statements. Existem subtarefas já predefinidas, e você pode criar sua própria importando-a com o comando import. Por exemplo, o módulo math contém todas as operações básicas de expressões matemáticas (incluindo seno e cosseno) — e pode ser chamada ao usar o comando import math na construção do programa.

Importando o poder da ciência computacional no Python

Dois importantes módulos na ciência computacional que você gostará de usar são o Numpy e SciPy. NumPy contém vários recursos úteis, inclusive a capacidade de criar coleções de números com o mesmo tipo em uma mesma variável, técnica conhecida como array. Ela também tem amplos recursos de álgebra linear, transformação de Fourier e inserção de números aleatórios. SciPy é um grande pacote em ciência computacional que contém Numpy e vários outros pacotes, como o matplotlib. O seguinte código demonstra um rápido exemplo de como importar NumPy e usá-lo em um snippet:

Usando Python para gerar saída em gráfico

Gerar retorno visual de dados na ciência computacional é a chave para entender e comunicar seus resultados. O pacote padrão em Python para isso é o módulo matplotlib. É de acesso rápido e fácil, como você pode ver:

O módulo matplotlib tem comandos para controlar tipo, cor, estilo e armazenamento do seu gráfico, bem como salvamento.

Próximos passos

A internet oferece centenas de sites capazes de auxiliar sua jornada em Python e seu papel na ciência da computação. Aqui estão algumas das ótimas fontes para aprender mais:

  • Como um exemplo curto de ciência computacional aplicada criada em Python, Daniel Homola criou uma implementação do método de Newton em apenas 10 linhas de código.

  • Uma das minhas fontes favoritas é uma introdução para Python para ciência computacional.

  • Procurando um bom livro? Confira o Effective Computation in Physics: Field Guide to Research with Python, escrito por Anthony Scopatz.

  • Uma referência recente e útil é o A Whirlwind Tour of Python, por Jake VanderPlas, pertencente ao livro Python Data Science Handbook: Essential Tools for Working with Data.

  • Assim que você avançar ou quiser ir além da ciência computacional em Python, eu recomendo Python Tricks: A Buffet of Awesome Python Features, de Dan Bader.

Bons estudos!

...

Quer ler mais conteúdo especializado de programação? Conheça a IBM Blue Profile e tenha acesso a matérias exclusivas, novas jornadas de conhecimento e testes personalizados. Confira agora mesmo, consiga as badges e dê um upgrade na sua carreira!

Guia de Iniciantes para Python