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

Documentos relacionados
Minicurso de Linguagem de Programação Python.

Minicurso de Linguagem de Programação. Python. Python. Grupo PET-Tele, Universidade Federal Fluminense. 23 de agosto de 2011

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

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

Fundamentos de Programação em Python

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

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

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

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

Organização de programas em Python. Vanessa Braganholo

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

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

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

Aula 03 Introdução à Programação com a Linguagem Python

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

Linguagem Python. Processamento Estatístico da Linguagem Natural. Barra invertida em strings. Strings. Aspas triplas. Operações com Strings

Programação de Computadores

Algoritmos e estrutura de dados

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. Aula 5 - Teórica Professor: Leonardo Carvalho

Programação I Aula 17 Correção de programas Pedro Vasconcelos DCC/FCUP

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

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

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

Introdução ao Python. Prof. Fabrício Olivetti de França Universidade Federal do ABC

Introdução à Computação - aulas 01 e 02 -

Primeira Aula de Python

Introdução ao Python

Mini apostila de Python - Oficina de Vestibulandos. PET Computação - UFPR September 2016

Processamento da Informação Teoria. Desvio Condicional

Linguagem de Programação I Prof. Tiago Eugenio de Melo.

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

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

Linguagem Python. Inteligência Artificial. Características de Python. Importando módulos. Módulos. Usando Python no modo interativo

Algoritmos e Estrutura de Dados Aula 02 Listas em Python

Estácio-FIC Graduação em Redes de Computadores

Luiz Eduardo Borges. Novatec

Computação Científica com Python

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

Linguagem Haskell. Riocemar S. de Santana

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

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

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

Introdução a programação em Python Flávio Filipe L. S. Porto

Vetores. Vanessa Braganholo

Processamento da Informação Teoria Funções

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

PYTHON LISTAS. Introdução à Programação SI1

Passo-a-passo para desenvolver um Programa usando a Linguagem Python

Linguagens de Programação Aula 13

Listas e Tuplas. Vanessa Braganholo

Aula de hoje. Comandos. Comandos simples. Comandos. Comandos de controle. Bloco de comandos. SCC Introdução à Programação para Engenharias

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

Lógica de Programação

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

Material III-Bimestre Introdução e conceitos fundamentais da Linguagem C#

Manipulação de Strings. Vanessa Braganholo

Python - Variáveis e expressões

Informática Parte 13 Prof. Márcio Hunecke

Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO

Exercícios para Fundamentos da Programação

Introdução a Programação. Curso: Sistemas de Informação Programação I José R. Merlin

MCG114 Programação de Computadores I. Comandos de condição 3/26/18. Comando if. Comando if. Até agora... Comandos de Condição! Comandos de Condição

Programação Estruturada e Orientada a Objetos

Manipulação de Strings. Vanessa Braganholo

Laboratório de Programação 1 Algoritmos e a Lógica de Programação

1 Detecção e correcção de erros Erros sintáticos Erros de execução Erros semânticos Erros semânticos...

Python 3.x Estrutura de Repetição for Estrutura de Decisão if then else

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

Linguagens de Programação

Analises de Sinais Introdução ao Python. Prof. George Sand Franca Profa. Susanne Maciel

Transcrição:

Curso básico de Python para estudantes de Física Germán A. Racca Universidade do Estado do Rio Grande do Norte Faculdade de Ciências Exatas e Naturais Departamento de Física Mossoró - RN 25 de Maio de 2016

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 2 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 3 / 28

Introdução Linguagem de programação criada por Guido van Rossum em 1991. Modelo de desenvolvimento comunitário gerenciado pela organização sem fins lucrativos Python Software Foundation. Possui licença Python Software Foundation License, compatível com GPL mas não é copyleft. Linguagem de alto nível, interpretada, interativa, orientada a objetos e de tipagem dinâmica. Multiplataforma: Linux, FreeBSD, Solaris, MacOS X, Windows, etc. G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 4 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 5 / 28

Instalação de pacotes básicos Fedora $ sudo dnf install python-ipython numpy scipy python2-matplotlib \ python-astropy Ubuntu $ sudo apt-get install ipython python-numpy python-scipy \ python-matplotlib python-astropy IPython console interativo NumPy operações com vetores e matrizes SciPy computação científica (interpolação, integração, otimização, estatística, etc) Matplotlib gráficos 2D com qualidade de publicação Astropy pacotes para Astronomia (coordenadas, arquivos FITS, fotometria, espectroscopia, cosmologia, etc) G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 6 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 7 / 28

Python interativo Console interativo do Python Console interativo do IPython G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 8 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 9 / 28

Tipos básicos Inteiros >>> 1 + 2 3 >>> a = 4 >>> type(a) <type int > Floats >>> c = 2.1 >>> type(c) <type float > Complexos >>> a = 1.5 + 0.5j >>> a.real 1.5 >>> a.imag 0.5 >>> type(a) <type complex > Booleanos >>> 3 > 4 False >>> test = (3 > 4) >>> test False >>> type(test) <type bool > Conversão de tipos >>> float(1) 1.0 >>> int(4.3) 4 >>> str(2) 2 G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 10 / 28

Operadores básicos Soma e subtração >>> 2.5 + 4 6.5 >>> -2 + 4 2 >>> 3 + -7-4 >>> 4 - -4 8 Multiplicação >>> 2 * 1.5 3.0 >>> 2 * -1-2 >>> -4 * 2-8 Divisão >>> 5 / 2 2 >>> 5 / 2.0 # ou 5.0/2, ou 5.0/2.0 2.5 >>> -5 / 2-3 >>> -5.0 / 2 # ou -5/2.0, ou -5.0/2.0-2.5 Potenciação >>> 2**3 8 >>> (-2)**4 # -2**4 = -16 16 >>> pow(2, 3) 8 >>> pow(-2, 4) 16 G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 11 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 12 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 13 / 28

Listas Coleção ordenada e mutável de objetos de diversos tipos >>> numeros = [1, 2, 3, 4] >>> print numeros [1, 2, 3, 4] >>> opcoes = [ sim, nao, talvez ] >>> print opcoes [ sim, nao, talvez ] >>> l = [numeros, opcoes] >>> print l [[1, 2, 3, 4], [ sim, nao, talvez ]] >>> L = [ red, blue, 1, 5.7, 3+2.1j] >>> print L [ red, blue, 1, 5.7, (3+2.1j)] >>> type(l) <type list > G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 14 / 28

Listas Slicing Mecanismo para criar fatias, ou slices, de uma lista. Um slice é uma lista gerada a partir de um fragmento de outra lista. >>> linux = [ fedora, debian, opensuse, ubuntu, arch ] >>> print linux[0] fedora >>> print linux[3] ubuntu >>> print linux[5] Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list index out of range >>> linux[-1] arch >>> linux[-3] opensuse >>> linux[1] = mint >>> print linux [ fedora, mint, opensuse, ubuntu, arch ] G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 15 / 28

Listas >>> linux = [ fedora, debian, opensuse, ubuntu, arch ] >>> linux[0:2] [ fedora, debian ] +--------+--------+----------+--------+------+ fedora debian opensuse ubuntu arch +--------+--------+----------+--------+------+ 0 1 2 3 4 5-5 -4-3 -2-1 >>> linux[:2] [ fedora, debian ] >>> linux[2:4] [ opensuse, ubuntu ] >>> linux[2:] [ opensuse, ubuntu, arch ] >>> linux[1:-1] [ debian, opensuse, ubuntu ] G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 16 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 17 / 28

Strings Seqüência imutável que armazena cadeias de caracteres >>> print Corinthians, Palmeiras ou Sao Paulo... Corinthians, Palmeiras ou Sao Paulo... >>> print vai curintia File "<stdin>", line 1 print vai curintia ^ SyntaxError: invalid syntax >>> print vai \ curintia\ vai curintia >>> print times:\n\tcorinthians\n\tpalmeiras\n\tsao Paulo\n\n...vai \ curintia\ times: Corinthians Palmeiras Sao Paulo...vai curintia G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 18 / 28

Strings >>> print "vai curintia " vai curintia >>> print "vai "curintia"" File "<stdin>", line 1 print "vai "curintia"" ^ SyntaxError: invalid syntax >>> print "vai \"curintia\"" vai "curintia" >>> print """times:... Corinthians... Palmeiras... Sao Paulo.........vai "curintia"... """ times: Corinthians Palmeiras Sao Paulo...vai "curintia" G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 19 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 20 / 28

Dicionários Coleção de elementos identificados por uma chave e um valor (key/value) Chave (ou índice) qualquer tipo imutável Valor qualquer coisa batman = { nome : Bruce Wayne, filmes : 9, amigos : [ Alfred, Robin ]} >>> print batman[ nome ] Bruce Wayne >>> print batman[ filmes ] 9 >>> print batman[ amigos ] [ Alfred, Robin ] >>> batman[ inicio ] = 1939 >>> print batman { amigos : [ Alfred, Robin ], inicio : 1939, filmes : 9, nome : Bruce Wayne } G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 21 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 22 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 23 / 28

if/elif/else Estruturas que controlam a ordem na qual o código é executado Condições análises que retornam valores booleanos: Verdadeiro (True) ou Falso (False) Operadores: == (igual), > (maior), < (menor), >= (maior ou igual), <= (menor ou igual),!= (diferente) numero = int(raw_input("por favor, insira um numero:")) if numero > 0: print "Voce digitou um numero positivo." elif numero < 0: print "Voce digitou um numero negativo." else: print "Voce digitou zero." >>> x = 1 >>> if x > 0:... print positivo... positivo >>> if x > 0:... print positivo... else:... print negativo... positivo G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 24 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 25 / 28

for/range for...in for VARIAVEL in ITERAVEL: # BLOCO DE CODIGO >>> meses = [ janeiro, fevereiro, marco ] >>> for mes in meses:... print mes... janeiro fevereiro marco range range(inicio, fim, passo) range(i, j) retorna [i, i+1, i+2,..., j-1] >>> for i in range(4):... print i... 0 1 2 3 G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 26 / 28

Tópicos 1 Introdução 2 Instalação de pacotes básicos 3 Python interativo 4 Tipos básicos e Operadores básicos 5 Recipientes Listas Strings Dicionários 6 Controle de fluxo if/elif/else for/range 7 Material do curso G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 27 / 28

Material do curso Aulas do Lázaro Camargo (INPE): https://scbi9y.s.cld.pt material-python-00.tar.bz2 python_basico.pdf python_aula_01_introducao.pdf python_aula_02_tipos.pdf python_aula_03_listas.pdf python_aula_04_estruturas_controle.pdf G. A. Racca (UERN/FANAT/DFIS) Curso básico de Python para estudantes de Física 25 de Maio de 2016 28 / 28