Apostila - Programao em Python
Apostila - Programao em Python
Eng.
Química
1ª edição
PROGRAMAÇÃO EM PYTHON APLICADA A
ENGENHARIA QUÍMICA
PROGRAMAÇÃO BÁSICA 5
1.1. INTRODUÇÃO E CONFIGURAÇÃO DO AMBIENTE DE DESENVOLVIMENTO 5
1.2. APRENDENDO A PROGRAMAR EM PYTHON 8
1.2.1. DECLARANDO VARIÁVEIS 9
1.2.2. EQUACIONAMENTO MATEMÁTICO 15
1.2.3. ESCREVENDO DADOS DE SAÍDA 18
1.3. UTILIZANDO A FUNÇÃO HELP 21
VARIÁVEIS COMPOSTAS 37
3.1. LISTAS 37
3.1.1. DECLARANDO LISTAS 37
3.1.2. MANIPULANDO LISTAS 39
3.2. TUPLAS 41
3.3. DICIONÁRIOS 42
CRIANDO FUNÇÕES 43
4.1. FUNÇÕES 43
1
Ao abordar programação básica, irei apresentar os principais
comandos para declarar variáveis, realizar cálculos e apresentar
os resultados. Assim, espera-se que o estudante seja capaz de
resolver problemas de engenharia em bases computacionais.
5
1. Programação básica
6
1. Programação básica
Ambiente Spyder:
A interface do Spyder pode ser dividida em três janelas
principais, conforme apresentado na figura abaixo.
8
1. Programação básica
• Executar estruturas
de controle de fluxo.
9
1. Programação básica
10
1. Programação básica
type(nome_variável)
11
1. Programação básica
Exemplo:
- O nome de uma variável deve ser iniciado com letra, seguido por
combinações de letras, números e caracteres.
- Variáveis não podem conter espaços no seu nome. Para separar
palavras, utiliza-se o caractere sublinhado ( _ ).
12
1. Programação básica
13
1. Programação básica
Exemplo:
onde tipo pode ser: int, float e complex. Estas são funções de
conversão do tipo de variável.
Exemplo:
14
1. Programação básica
var=expressão
15
1. Programação básica
i) Uso de módulos
Para realizar diferentes operações, o Python possui módulos
(bibliotecas) contendo instruções executáveis que facilitam a vida
no programador.
Para importar um módulo em Python, basta digitar a função import
seguida do nome do módulo que deseja importar. Assim, caso o
usuário deseje utilizar as diversas funções matemáticas presentes
no módulo math, a sintaxe de chamada seria:
import math
16
1. Programação básica
Exemplo:
17
1. Programação básica
print()
18
1. Programação básica
Retorna:
Retorna:
19
1. Programação básica
Exemplo:
20
1. Programação básica
Exemplo:
Resulta em:
21
1. Programação básica
22
2. Controle de fluxo
2
Até o momento, todo script criado em Python executava a primeira
linha de comando, em seguida a segunda e assim por diante. As
estruturas de controle permitem modificar o fluxo de execução
dessas instruções, de modo a analisar parâmetros pré-definidos e,
a partir da resposta, escolher um caminho a seguir.
Imagine que você deva escrever um programa que calcule o número
de Reynolds para um líquido escoando em um duto. O programa deverá
ser capaz de classificar o regime de escoamento de acordo com o
número de Reynolds calculado.
𝜌𝑣𝐷
𝑅𝑒 =
µ
23
2. Controle de fluxo
24
2. Controle de fluxo
25
2. Controle de fluxo
if teste_condicional:
comandos que serão executados caso o teste seja verdadeiro
26
2. Controle de fluxo
27
2. Controle de fluxo
if teste_condicional:
comandos que serão executados caso o teste seja verdadeiro
else:
comandos que serão executados caso o teste seja falso
28
2. Controle de fluxo
Retorna:
Ou
if teste_condicional 1:
comandos para executar caso o teste 1 seja verdadeiro
elif teste_condicional 2:
comandos para executar caso o teste 2 seja verdadeiro
else:
comandos para executar caso os testes 1 e 2 sejam falsos
29
2. Controle de fluxo
30
2. Controle de fluxo
31
2. Controle de fluxo
Sua sintaxe é:
while teste_condicional:
comandos
Retorna a sequência: 0, 1, 2, 3 e 4.
32
2. Controle de fluxo
Retorna:
Retorna:
print(argumento,palavra_chave)
Onde palavra-chave pode ser: end = ' ', (modifica o valor padrão
de quebra de linha, escrito como \n); sep = ' ', (modifica o valor
padrão do espaçamento entre valores que é o espaçamento em
branco); file = ' ', (modifica o valor padrão de onde será impresso
o argumento da função, o qual tem como padrão o terminal IPython).
Retorna:
Retorna:
Retorna:
35
2. Controle de fluxo
36
3. Variáveis compostas
3
Variáveis compostas são variáveis que podem armazenar diversos
valores na memória do programa em uma única variável. Em Python,
as variáveis compostas podem ser do tipo lista, tupla e
dicionário.
3.1. LISTAS
Listas são definidas como variáveis compostas, uma vez que podem
armazenar diversos valores na memória do programa em uma única
variável. Em Python, as variáveis compostas podem ser do tipo
tupla, lista e dicionário.
a l v a r o d a n i e l
-13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
38
3. Variáveis compostas
Exemplo:
40
3. Variáveis compostas
3.2. TUPLAS
As tuplas funcionam de forma semelhante às listas, diferindo
apenas no fato de que as tuplas não permitem que seus elementos
sejam alterados durante a execução de um programa. Para que isso
ocorra, o usuário deverá parar a execução para alterar o elemento.
41
3. Variáveis compostas
3.3. DICIONÁRIOS
Para escrever dicionários basta que os elementos sejam escritos
entre chaves {} e separados por vírgula. Outra forma de declarar
um dicionário é utilizar a função dict.
A principal diferença entre listas, tuplas e dicionários está no
fato de que os elementos das listas e das tuplas são representados
por índices numéricos (0,1,2....), enquanto que em um dicionário
o usuário poderá identificar os índices da forma que preferir.
dados={'nome': 'João', 'idade': '25'}
42
4. Criando funções
4
4.1. FUNÇÕES
Funções são códigos preestabelecidos com o objetivo de facilitar
a rotina de trabalho de um programador. Funções como print, input,
int, str são constantemente utilizadas durante a programação.
A sintaxe de uma função compreende a palavra chave que define uma
função no Python (def), seguida do nome da função, do argumento
(entre parênteses) e ao final dois pontos. Considere a função
abaixo
def cumprimento(nome):
print('Olá',nome)
43
4. Criando funções
Retorna
Exemplo:
Retorna
Retorna
44
4. Criando funções
45
4. Criando funções
Retorna:
46
5. Uso de módulos em problemas de engenharia química
5
de engenharia química
47
5. Uso de módulos em problemas de engenharia química
48
5. Uso de módulos em problemas de engenharia química
Perceba que ambos os gráficos gerados estão sem nome nos eixos,
sem título e legenda. Para nomear as partes do gráfico, basta
utilizar os seguintes comandos após a função plt.plot() ter sido
chamada:
plt.xlabel('Nome que irá aparecer no eixo X')
plt.ylabel('Nome que irá aparecer no eixo y')
plt.title('Nome que irá aparecer no título do gráfico')
plt.legend(['legenda1', 'legenda2'])
49
5. Uso de módulos em problemas de engenharia química
plt.plot(x,y,'ro--')
O comando irá plotar o par x,y na cor vermelha (r), com marcador
tipo círculo (o) e linhas serrilhadas (--).
Exemplo:
Retorna:
50
5. Uso de módulos em problemas de engenharia química
import numpy as np
51
5. Uso de módulos em problemas de engenharia química
Retorna:
Retorna:
Retorna:
52
5. Uso de módulos em problemas de engenharia química
Retorna:
53
5. Uso de módulos em problemas de engenharia química
Exemplo:
Retorna:
54
5. Uso de módulos em problemas de engenharia química
Retorna:
Exemplo:
Retorna:
55
5. Uso de módulos em problemas de engenharia química
Exemplo:
Retorna:
56
5. Uso de módulos em problemas de engenharia química
x = linalg.solve(a,b)
57
5. Uso de módulos em problemas de engenharia química
Retorna:
58
5. Uso de módulos em problemas de engenharia química
sol = opt.toms748(função,a,b)
onde função é a equação não linear que deve ser escrita dentro de
uma função definida pelo usuário (usando def), “a” um escalar
contendo o limite inferior do intervalo de busca e “b” um esalar
com o limite superior do intervalo de busca.
A grande vantagem deste método é que não necessita de uma
estimativa inicial, apenas do espaço de busca. Já o método de
newton(), necessita que uma estimativa inicial seja fornecida para
a busca da solução. Sua sintaxe é:
sol = opt.newton(função,x0)
onde função é a equação não linear que deve ser escrita dentro de
uma função definida pelo usuário (usando def) e x0 um escalar
contendo a estimativa inicial.
Retorna:
59
5. Uso de módulos em problemas de engenharia química
sol = opt.root(função,x0)
60
5. Uso de módulos em problemas de engenharia química
Retorna:
61
5. Uso de módulos em problemas de engenharia química
Sua sintaxe é:
Retorna:
62
5. Uso de módulos em problemas de engenharia química
Retorna:
63
5. Uso de módulos em problemas de engenharia química
Retorna:
64
5. Uso de módulos em problemas de engenharia química
De forma alternativa:
Retorna:
65
BIBLIOGRAFIA