Bem vindo. Neste curso você irá aprender o mínimo necessário para utilizar uma linguagem de computação para resolver problemas comuns dentro da sua vida acadêmica como: computações simples, criação de gráficos e inserção dos gráficos em um artigo.
Leia este texto com atenção até o final. Ele terá instruções em como proceder e preparar o seu ambiente para o início de cada aula (ou para refazer as aulas em casa).
Vamos nos divertir.
"Por que não?" seria uma ótima contra pergunta, mas também poderíamos dizer o mesmo para C, Ruby, C#, Java, Julia, Fortran ou C++. Todas estas são linguagens conhecidas, que gozam de uma ótima reputação (independente das opiniões do autor) e competentes para serem utilizadas neste cenário. Porém nenhuma destas possui a versatilidade, simplicidade e foco em computação numérica como o Python.
Existe uma piada interna dos desenvolvedores Python que diz:
"O Python é a segunda melhor linguagem para qualquer coisa" -- Autor Desconhecido
Pode parecer ruim, mas apesar de tudo é um ótimo mérito. Ao aprender Python você pode não obter a performance esperada e extrair o máximo do seu hardware (e isso é também um debate), mas terá uma performance satisfatória (e muito boa se programar da forma correta). Pode não possuir todas as estruturas esperadas de uma linguagem orientada a objetos (como o C++/Java) ou Funcional (como o Elixir ou Haskell), mas permite trabalhar com os três paradigmas mais comuns da atualidade em uma única linguagem, o que é bastante poderoso. É uma linguagem bastante expressiva, com tipagem dinâmica (que é uma vantagem ao mesmo tempo que uma desvantagem), onde é possível escrever ideias com o minimo de código possível sem perder a expressividade. Python lhe dará o poder de criar interfaces gráficas dignas de aplicações profissionais como o Glade e o QT (sem ter aquela aparência de que seu programa não encaixa com o ambiente), permite o desenvolvimento de ferramentas para automação de tarefas como no Blender e GIMP.
Esses são alguns dos motivos para aprender Python como uma ferramenta do dia a dia. Nosso foco será a computação científica.
O Python começou a emergir como uma ferramenta de computação Científica com o surgimento do projeto SciPy em especial da biblioteca NumPy, que permitiu ao Python realizar operações vetoriais e matriciais com performance compatível a linguagens compiladas como o C e o Fortran (que ainda é o rei neste segmento). Após o NumPy diversos projetos se seguiram, como a MatplotLib que é uma biblioteca para gráficos, Pandas uma biblioteca para manipulação de dados tabulares e séries temporais e mais recentemente Scikit-Learn, TensorFlow e OpenCV bibliotecas usadas em aprendizagem de máquina, redes profundas e visão computacional. O número de aplicações para Python não para de crescer e hoje é sem dúvidas a linguagem número um para prototipagem na pesquisa em redes de aprendizagem profunda.
Esse é o motivo pelo qual o Python foi escolhido para este curso.
O curso é dividido em 3 aulas de 2 horas que apresenta o básico da linguagem Python e formas de representar, visualizar e operar com os dados numéricos. Também iremos aprender em como exportar estes gráficos dentro de um artigo científico de forma manter a coerência textual e a aparência.
- Obtendo o Python
- Acessando o Jupyter Notebook
- Estrutura básica da linguagem Python
- Manipulando cadeias
- Visualizando dados unidimensionais
- Definindo funções puras
- Manipulando e visualizando matrizes
- Laços temporais e espaciais
- Operando com submatrizes
- Operações de disco com dados numéricos
- Anatomia de um gráfico
- Embelezando o gráfico
- Exportando para um artigo
-
Abra um terminal
-
Clone o repositório do curso
git clone https://github.com/igormorgado/introducaopython
-
Entre no diretório do curso
cd introducaopython
-
Execute o teste de ambiente
bash ./testenv.sh
-
Se você não ver um OK bem grande na tela após algum tempo de teste, comunique imediatamente. Se tudo deu certo.
-
Se deu tudo certo, ative o ambiente:
source venv/bin/activate
-
Acesse as aulas
jupyter-notebook aulas